クイックスタート: 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