次の方法で共有


クイックスタート: Azure CLI から Azure Database for PostgreSQL - フレキシブル サーバーに接続してクエリを実行する

適用対象: Azure Database for PostgreSQL - フレキシブル サーバー

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

前提条件

  • アクティブなサブスクリプションが含まれる Azure アカウント。 所有していない場合は、無料試用版を入手してください。
  • Azure CLI の最新バージョンをインストールします。
  • Azure CLI を使用して az login コマンドでサインインします。
  • (省略可能) 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>

例:

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

接続が成功した場合は同様の出力が表示されます。

Successfully connected to server372060240.

接続に失敗した場合は、次の点を確認します:

  • サーバー管理者のユーザー名とパスワードが正しいかどうかを確認します。
  • クライアント マシンにファイアウォール規則が構成されているかどうかを確認します
  • サーバーが仮想ネットワークを使用してプライベート アクセスで構成されている場合は、クライアント マシンが同じ仮想ネットワーク内にあることを確認します。

対話モードを使用して複数のクエリを実行する

対話 (interactive) モードを使用して、複数のクエリを実行することができます。 対話モードを有効にするには、次のコマンドを実行します。

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>

1 つのクエリを実行する

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

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 ファイルを実行する

az postgres flexible-server execute コマンドを使用して、--file-path 引数 -f を使用して sql ファイルを実行できます。

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

次のステップ