SHOW POSTGRES INSTANCES

アクセス権限のある:doc:`Snowflake Postgresインスタンス</user-guide/snowflake-postgres/about>`をリストします。

こちらもご参照ください。

CREATE POSTGRES INSTANCEALTER POSTGRES INSTANCEDESCRIBE POSTGRES INSTANCEDROP POSTGRES INSTANCE

構文

SHOW POSTGRES INSTANCES [ LIKE '<pattern>' ]
                        [ STARTS WITH '<name_string>' ]
                        [ LIMIT <rows> [ FROM '<name_string>' ] ]
Copy

パラメーター

LIKE 'pattern'

オプションで、オブジェクト名でコマンド出力をフィルタリングします。フィルターは、 SQL ワイルドカード文字(% および _)をサポートする、 大文字と小文字を区別しない パターンマッチングを使用します。

たとえば、次のパターンは 同じ 結果を返します。

... LIKE '%testing%' ...
... LIKE '%TESTING%' ...

. デフォルト: 値なし(フィルタリングは出力に非適用)。

STARTS WITH 'name_string'

オプションで、オブジェクト名の先頭に表示される文字に基づいてコマンド出力をフィルタリングします。文字列は一重引用符で囲む必要があり、 大文字と小文字を区別します

たとえば、次の文字列は 異なる 結果を返します。

... STARTS WITH 'B' ...
... STARTS WITH 'b' ...

. デフォルト: 値なし(フィルターは出力に適用されない)

LIMIT rows [ FROM 'name_string' ]

オプションで、返される行の最大数を制限すると同時に、結果の「ページネーション」を有効にします。実際に返される行数は、指定された制限より少ない場合があります。例えば、既存のオブジェクトの数が指定された制限より少ないなどです。

オプションの FROM 'name_string' サブ句は、結果の「カーソル」として効果的に機能します。これにより、指定された文字列と一致するオブジェクト名を持つ最初の行に続く指定された行数を取得できます。

  • 文字列は一重引用符で囲む必要があり、 大文字と小文字を区別します

  • 文字列に完全なオブジェクト名を含める必要はありません。部分的な名前がサポートされています。

デフォルト:値なし(出力に制限は適用されない)

注釈

FROM 'name_string' 句と STARTS WITH 'name_string' 句の両方をサポートする SHOW コマンドの場合、同じステートメントでこれらの両方の句を組み合わせることができます。ただし、両方の条件を満たしている必要があります。そうでない場合、互いにキャンセルされ、結果が返されません。

さらに、オブジェクトは名前の辞書式順序で返されるため、 FROM 'name_string' は、 STARTS WITH 'name_string' によって返される行よりも辞書式の値が大きい行のみを返します。

例:

  • ... STARTS WITH 'A' LIMIT ... FROM 'B' は結果を返しません。

  • ... STARTS WITH 'B' LIMIT ... FROM 'A' は結果を返しません。

  • ... STARTS WITH 'A' LIMIT ... FROM 'AB' は結果を返します(入力文字列に一致する行がある場合)。

出力

コマンドの出力には、オブジェクトのプロパティとメタデータを説明する以下の列が含まれます。

説明

name

Postgresインスタンスの名前。

owner

Postgresインスタンスを所有するロール。

owner_role_type

所有者ロールのタイプ(例:ROLEまたはDATABASE_ROLE)。

created_on

Postgresインスタンスが作成された日時。

updated_on

Postgresインスタンスが最後に更新された日時。

type

Postgresインスタンスのタイプ。

origin

Postgresインスタンスの基点(例:別のインスタンスからフォークされた場合)。

host

Postgresインスタンスへの接続に使用するホスト名。

privatelink_service_identifier

インスタンスに対してPrivate Linkが構成されている場合は、Private Linkサービスの識別子。

compute_family

Postgresインスタンスの:doc:`コンピュートファミリー</user-guide/snowflake-postgres/postgres-instance-sizes>`(インスタンスサイズ)。

authentication_authority

インスタンスに使用される認証方法(現在は``POSTGRES``)。

storage_size

Postgresインスタンスに割り当てられたストレージサイズ(GB)。

postgres_version

インスタンスで実行されているPostgresのメジャーバージョン。

postgres_settings

インスタンスに構成されているカスタム:doc:Postgresサーバー設定</user-guide/snowflake-postgres/postgres-server-settings>

is_ha

インスタンスで:doc:`高可用性</user-guide/snowflake-postgres/high-availability>`が有効化されているかどうか。

retention_time

インスタンスのデータ保持時間。

state

インスタンスの現在の:ref:状態<instance-states>。可能な値:CREATINGRESTORINGSTARTINGREPLAYINGFINALIZINGREADYRESTARTINGRESUMINGSUSPENDINGSUSPENDED

comment

Postgresインスタンスのコメント。

アクセス制御の要件

この操作の実行に使用される ロール には、少なくとも次の 権限 が必要です。

権限

オブジェクト

メモ

OPERATE または OWNERSHIP

Postgresインスタンス

これらの権限のいずれかを持つインスタンスだけが出力に表示されます。

指定された権限のセットを使用してカスタムロールを作成する手順については、 カスタムロールの作成 をご参照ください。

セキュリティ保護可能なオブジェクト に対して SQL アクションを実行するためのロールと権限付与に関する一般的な情報については、 アクセス制御の概要 をご参照ください。

使用上の注意

  • このコマンドの実行には、稼働中のウェアハウスは必要ありません。

  • このコマンドは、現在のユーザーの現在のロールに少なくとも1つのアクセス権限が付与されているオブジェクトのみを返します。

  • MANAGE GRANTS アクセス権限により、所有者はアカウント内のすべてのオブジェクトを暗黙的に参照できます。デフォルトでは、アカウント管理者( ACCOUNTADMIN ロールを持つユーザー)とセキュリティ管理者( SECURITYADMIN ロールを持つユーザー)のみが MANAGE GRANTS 権限を持っています。

  • このコマンドの出力を後処理するには、 パイプ演算子->>)または RESULT_SCAN 関数。どちらのコンストラクトも、出力を クエリできる結果セットとして扱います。

    たとえば、パイプ演算子または RESULT_SCAN 関数を使用して、 SHOW コマンド出力から特定の列を選択したり、行をフィルター処理したりできます。

    出力列を参照する場合は、列名に:ref:二重引用符<label-delimited_identifier>`で囲まれた識別子を使用します。たとえば、出力列 ``type` を選択するには、 SELECT "type" を指定します。

    SHOW コマンドの出力列名は小文字のため、二重引用符で囲まれた識別子を使用する必要があります。二重引用符により、 SELECT リストまたは WHERE 句内の列名が、スキャンされた SHOW コマンド出力内の列名と一致することが保証されます。

  • コマンドは、コマンドを実行するために使用されるロールのアクセス権限によって決定された通り、指定されたオブジェクトタイプに対して 最大 1万件の記録を返します。1万件を超える記録は、フィルターを適用しても返されません。

    1万件を超える記録が存在する結果を表示するには、 Snowflake Information Schema で対応するビュー(存在する場合)をクエリします。

  • このコマンドを使用して、容量計画、トラブルシューティング、監査のためにPostgresインスタンスの状態と構成をモニターします。

  • 一般的なユースケースとしては、運用中のインスタンス状態のチェック、アップグレードが必要なインスタンスの特定、アカウント全体のストレージ使用状況の確認などがあります。

アカウント内のすべてのPostgresインスタンスをリストします。

SHOW POSTGRES INSTANCES;
Copy

``prod``で始まる名前のPostgresインスタンスをリストします。

SHOW POSTGRES INSTANCES STARTS WITH 'PROD';
Copy

パターンに一致するPostgresインスタンスをリストします。

SHOW POSTGRES INSTANCES LIKE 'DEV_%';
Copy

:doc:`フロー演算子</sql-reference/operators-flow>`を使用して、特定の列をフィルターして選択します。

SHOW POSTGRES INSTANCES
  ->> SELECT "name", "state", "compute_family", "storage_size"
      FROM $1
      WHERE "state" = 'READY'
      ORDER BY "name";
Copy

高可用性が有効になっているすべてのインスタンスを検索します。

SHOW POSTGRES INSTANCES
  ->> SELECT "name", "compute_family", "is_ha", "postgres_version"
      FROM $1
      WHERE "is_ha" = 'true';
Copy

すべてのインスタンスにおけるストレージ使用量の概要を取得します。

SHOW POSTGRES INSTANCES
  ->> SELECT "name", "storage_size", "created_on"
      FROM $1
      WHERE "storage_size" > 100
      ORDER BY "storage_size" DESC;
Copy