SHOW POSTGRES INSTANCES

액세스 권한이 있는 :doc:`Snowflake Postgres 인스턴스 </user-guide/snowflake-postgres/about>`를 나열합니다.

참고 항목:

CREATE POSTGRES INSTANCE , ALTER POSTGRES INSTANCE, DESCRIBE POSTGRES INSTANCE , DROP 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

인스턴스의 현재 상태 <instance-states>`입니다. 가능한 값은 ``CREATING`, RESTORING, STARTING, REPLAYING, FINALIZING, READY, RESTARTING, RESUMING, SUSPENDING, ``SUSPENDED``입니다.

comment

Postgres 인스턴스에 대한 설명입니다.

액세스 제어 요구 사항

이 작업을 실행하는 데 사용되는 역할 에는 최소한 다음 권한 이 있어야 합니다.

권한

오브젝트

참고

OPERATE 또는 OWNERSHIP

Postgres 인스턴스

이러한 권한 중 하나가 있는 인스턴스만 출력에 나타납니다.

지정된 권한 세트로 사용자 지정 역할을 만드는 방법에 대한 지침은 사용자 지정 역할 만들기 섹션을 참조하십시오.

보안 오브젝트 에 대해 SQL 작업을 수행하기 위한 역할과 권한 부여에 대한 일반적인 정보는 액세스 제어의 개요 섹션을 참조하십시오.

사용법 노트

  • 이 명령을 실행하기 위해 실행 중인 웨어하우스가 꼭 필요하지는 않습니다.

  • 이 명령은 현재 사용자의 현재 역할에 하나 이상의 액세스 권한이 부여된 오브젝트만 반환합니다.

  • MANAGE GRANTS 액세스 권한은 그 권한을 보유한 자가 계정에 있는 모든 오브젝트를 볼 수 있도록 암시적으로 허용합니다. 기본적으로, 계정 관리자(ACCOUNTADMIN 역할 이 있는 사용자)와 보안 관리자(SECURITYADMIN 역할이 있는 사용자)만 MANAGE GRANTS 권한을 가집니다.

  • 이 명령의 출력을 후처리하기 위해 파이프 연산자 (->>) 또는 RESULT_SCAN 함수를 사용할 수 있습니다. 두 구문 모두 출력을 쿼리할 수 있는 결과 세트로 간주합니다.

    예를 들어, 파이프 연산자 또는 RESULT_SCAN 함수를 사용하여 SHOW 명령 출력에서 특정 열을 선택하거나 행을 필터링할 수 있습니다.

    출력 열을 참조하는 경우 열 이름에 :ref:`큰따옴표로 묶인 식별자<label-delimited_identifier>`를 사용합니다. 예를 들어, 출력 열 ``type``을 선택하려면 ``SELECT “type”``을 지정합니다.

    SHOW 명령의 출력 열 이름은 소문자이므로 큰따옴표로 묶인 식별자를 사용해야 합니다. 큰따옴표는 SELECT 목록 또는 WHERE 절의 열 이름이 스캔된 SHOW 명령 출력과 일치하도록 보장합니다.

  • 이 명령은 명령을 실행하는 데 사용된 역할에 대한 액세스 권한에 따라 지정된 오브젝트 유형에 대해 최대 1만 개의 레코드를 반환합니다. 필터를 적용하더라도 1만 개 레코드 제한을 초과하는 레코드는 반환되지 않습니다.

    10,000개 이상의 레코드가 존재하는 결과를 보려면 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