Поделиться через


Краткое руководство: подключение и выполнение запросов с помощью Azure CLI к базе данных Azure для PostgreSQL

В этом кратком руководстве показано, как подключиться к гибкому экземпляру сервера базы данных Azure для PostgreSQL с помощью Azure CLI az postgres flexible-server connect, и выполнить один запрос или SQL-файл с помощью команды az postgres flexible-server execute. С помощью этой команды можно проверить подключение к серверу базы данных и выполнить запросы. Вы также можете выполнить несколько запросов в интерактивном режиме.

Предварительные условия

  • Учетная запись Azure с активной подпиской. Если у вас ее нет, получите бесплатную пробную версию.
  • Установите последнюю версию Azure CLI .
  • Войдите с помощью команды az login в Azure CLI.
  • (необязательно) Включите экспериментальную сохраняемость параметров с az config param-persist on. Сохраняемость параметров помогает использовать локальный контекст без необходимости повторять многочисленные аргументы, такие как группа ресурсов или расположение.

Создание экземпляра Базы данных Azure для PostgreSQL

Первое, что нужно создать, — это управляемый экземпляр гибкого сервера базы данных Azure для PostgreSQL. В Azure Cloud Shell выполните следующий сценарий и запишите имя сервера, **имя пользователя и пароль , созданный из этой команды.

az postgres flexible-server create --public-access <your-ip-address>

Вы можете указать дополнительные аргументы для этой команды, чтобы настроить ее. Ознакомьтесь со всеми аргументами для команды az postgres flexible-server create.

Просмотр всех аргументов

Вы можете просмотреть все аргументы для этой команды с помощью аргумента --help.

az postgres flexible-server connect --help

Проверка подключения к серверу базы данных

Вы можете протестировать и подтвердить подключение к базе данных из вашей среды разработки с помощью команды az postgres flexible-server connect.

az postgres flexible-server connect \
    -n <servername> -u <username> -p "<password>" -d <databasename>

Пример:

az postgres flexible-server connect \
    -n server372060240 -u starchylapwing9 -p "dbpassword" -d postgres

Вы увидите аналогичные выходные данные, если подключение выполнено успешно.

Successfully connected to server372060240.

Если подключение завершилось сбоем, проверьте следующие моменты:

  • Проверьте, правильно ли указаны имя пользователя и пароль администратора сервера.
  • Если вы настроили правило брандмауэра для клиентского компьютера
  • Если сервер настроен с частным доступом с виртуальными сетями, убедитесь, что клиентский компьютер находится в той же виртуальной сети.

Выполнение нескольких запросов в интерактивном режиме

Вы можете выполнить несколько запросов в интерактивном режиме. Чтобы включить интерактивный режим, выполните следующую команду.

az postgres flexible-server connect \
    -n <servername> -u <username> -p "<password>" -d <databasename> \
    --interactive

Пример:

az postgres flexible-server connect \
    -n server372060240 -u starchylapwing9 -p "dbpassword" -d postgres --interactive

Вы увидите интерфейс оболочки psql , как показано здесь:

Password for starchylapwing9:
Server: PostgreSQL 13.14
Version: 4.0.1
Home: http://pgcli.com
postgres> SELECT 1;
+----------+
| ?column? |
|----------|
| 1        |
+----------+
SELECT 1
Time: 0.167s
postgres>

Выполнение отдельных запросов

Вы можете выполнять отдельные запросы к базе данных Postgres с помощью az postgres flexible-server execute.

az postgres flexible-server execute \
    -n <servername> -u <username> -p "<password>" -d <databasename> \
    -q <querytext> --output table

Пример:

az postgres flexible-server execute \
    -n server372060240 -u starchylapwing9 -p "dbpassword" -d postgres \
    -q "SELECT 1" --output table

Вы увидите выходные данные, как показано здесь:

Successfully connected to server372060240.
Ran Database Query: 'SELECT 1'
Retrieving first 30 rows of query output, if applicable.
Closed the connection to server372060240
?column?
----------
1

Выполнение файла SQL

Вы можете выполнить sql-файл с помощью команды az postgres flexible-server execute используя аргумент --file-path. -f

az postgres flexible-server execute \
    -n <server-name> -u <username> -p "<password>" -d <database-name> \
    --file-path "<file-path>"

Пример. Подготовка test.sql файла. С простыми SELECT запросами можно использовать следующий тестовый скрипт:

SELECT 1;
SELECT 2;
SELECT 3;

Сохраните содержимое test.sql в текущем каталоге и выполните следующую команду.

az postgres flexible-server execute \
    -n server372060240 -u starchylapwing9 -p "dbpassword" -d postgres \
    -f "test.sql"

Вы увидите выходные данные, как показано здесь:

Running sql file 'test.sql'...
Successfully executed the file.
Closed the connection to server372060240