次の方法で共有


クイック スタート: Azure Database for PostgreSQL を使用して Azure CLI に接続してクエリを実行する

このクイック スタートでは、Azure CLI を使用して Azure Database for PostgreSQL フレキシブル サーバー インスタンスに接続し、az postgres flexible-server connect コマンドを使用して単一のクエリまたは SQL ファイルを実行する方法を示します。 このコマンドを使用すると、データベース サーバーへの接続をテストし、クエリを実行できます。 対話型モードを使用して複数のクエリを実行することもできます。

Prerequisites

  • アクティブなサブスクリプションを持つ Azure アカウント。 所有していない場合は、無料試用版を入手してください。
  • Azure CLI の最新バージョンをインストールします。
  • az login コマンドを使用して Azure CLI を使用してサインインします。
  • (省略可能) az config param-persist onを使用して実験用パラメーターの永続化を有効にします。 パラメーターの永続化は、リソース グループや場所などの多数の引数を繰り返すことなく、ローカル コンテキストを使用するのに役立ちます。

Azure Database for PostgreSQL インスタンスを作成する

最初に作成するのは、マネージド Azure Database for 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>

Example:

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

Example:

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>

1 つのクエリを実行する

az postgres flexible-server execute を使用して、Postgres データベースに対して単一のクエリを実行できます。

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

Example:

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 ファイルの実行

引数を使用して、--file-path コマンドで sql ファイル-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