Using PGD CLI#

PGD CLIとは何ですか?#

PGD CLIは、PGDクラスターに接続して管理する便利な方法です。これを使用するには、PGDスーパーユーザー権限または同等のユーザーが必要です。スーパーユーザー権限を持つPGDユーザーは

bdr_superuserのロールとレプリケーション です。同等のユーザーの例は、EDB

BigAnimal分散高可用性クラスターのedb_adminです。

  • .pgpass にエントリを追加します。これには、ホスト、ポート、データベース名、ユーザー名、パスワードが含まれます。 - PGPASSWORD 環境変数にパスワードを設定する。 - 接続文字列にパスワードを含めます。

他のオプションは複数のデータベースでうまく拡張できないか、パスワードの機密性が危険にさらされるため、最初のオプションをお勧めします。

コマンドを実行してPGDコマンドラインインターフェイスにアクセスします。 pgd コマンドには、ユーザー名とパスワードとともに、接続するホスト、ポート、データベースに関する詳細が必要です。

データベース接続文字列を渡す#

--dsn フラグを使用して、データベース接続文字列をpgd コマンドに渡します。 --dsn フラグを使用して接続文字列を渡す場合、構成ファイルは必要ありません。構成ファイルが存在する場合でも、フラグが優先されます。例

pgd show-nodes --dsn "host=bdr-a1 port=5432 dbname=bdrdb user=enterprisedb"

コマンドオプションの説明については、コマンドリファレンスの PGD overview を参照してください。

構成ファイルの指定#

pgd-cli-config.yml ファイルが/etc/edb/pgd-cli または$HOME/.edb/pgd-cli にある場合、pgd はそれを使用します。オプションの-f または--config-file フラグを使用して、この動作をオーバーライドできます。例

pgd show-nodes -f /opt/my-config.yml
Node             Node ID    Group          Type    Current State Target State Status Seq ID
- ---             -------    -----          ----    ------------- ------------ ------ ------
p-vjljj303dk-a-1 2573417965 p-vjljj303dk-a data    ACTIVE        ACTIVE       Up     1
p-vjljj303dk-a-2 126163807  p-vjljj303dk-a data    ACTIVE        ACTIVE       Up     2
p-vjljj303dk-a-3 3521351376 p-vjljj303dk-a witness ACTIVE        ACTIVE       Up     3

出力形式の指定#

-o または--output フラグを使用して、デフォルトの出力形式をJSONまたはYAMLに変更します。例

pgd show-nodes -o json
[
    {
        "node_id": 2573417965,
        "node_name": "p-vjljj303dk-a-1",
        "node_group_id": 4169125197,
        "node_group_name": "p-vjljj303dk-a",
        "node_kind_name": "data",
        "current_state": "ACTIVE",
        "target_state": "ACTIVE",
        "status": "Up",
        "node_seq_id": 1,
        "node_local_dbname": "bdrdb",
        "interface_connstr": "host=p-vjljj303dk-a-1-node.vmk31wilqpjeopka.biganimal.io user=streaming_replica sslmode=verify-full port=5432 sslkey=/controller/certificates/streaming_replica.key sslcert=/controller/certificates/streaming_replica.crt sslrootcert=/controller/certificates/server-ca.crt application_name=p-vjljj303dk-a-1 dbname=bdrdb",
        "route_priority": -1,
        "route_fence": false,
        "route_writes": true,
        "route_reads": true,
        "route_dsn": "host=p-vjljj303dk-a-1-node.vmk31wilqpjeopka.biganimal.io user=streaming_replica sslmode=verify-full port=5432 sslkey=/controller/certificates/streaming_replica.key sslcert=/controller/certificates/streaming_replica.crt sslrootcert=/controller/certificates/server-ca.crt application_name=p-vjljj303dk-a-1 dbname=bdrdb"
    },
...
]

PGD CLIは、次の出力形式をサポートしています。

Setting

Format

Considerations

none

Tabular

デフォルトのフォーマット。この設定では、データを表形式で表示します。

json

JSON

フォーマットなしの生データを表示します。一部のコマンドでは、JSON出力には、追加のフィールドや詳細なメッセージなど、表形式出力より多くのデータが表示される場合があります。

yaml

YAML

JSON出力に似ていますが、YAMLとして、フィールドがアルファベット順にオーダーされます。実験的であり、将来のバージョンでは完全にサポートされない可能性があります。

コマンドラインヘルプへのアクセス#

サポートされているコマンドをリストするには、次を入力します。

pgd help

特定のコマンドとそのパラメーターのヘルプが必要な場合は、pgd help <command_name> と入力してください。例

pgd help show-nodes