DROP POSTGRES INSTANCE

지정된 :doc:`Snowflake Postgres 인스턴스 </user-guide/snowflake-postgres/about>`를 계정에서 제거합니다.

참고 항목:

CREATE POSTGRES INSTANCE , ALTER POSTGRES INSTANCE, DESCRIBE POSTGRES INSTANCE , SHOW POSTGRES INSTANCES

구문

DROP POSTGRES INSTANCE [ IF EXISTS ] <name>
Copy

매개 변수

name

삭제할 Postgres 인스턴스의 식별자를 지정합니다.

식별자에 공백이나 특수 문자가 포함된 경우 전체 문자열을 큰따옴표로 묶어야 합니다. 큰따옴표로 묶인 식별자도 대/소문자를 구분합니다.

자세한 내용은 식별자 요구 사항 섹션을 참조하십시오.

액세스 제어 요구 사항

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

권한

오브젝트

참고

OWNERSHIP

Postgres 인스턴스

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

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

사용법 노트

  • 현재, 삭제된 Postgres 인스턴스는 복구할 수 없으며 다시 생성해야 합니다. 그러나 인스턴스의 :doc:`포크 </user-guide/snowflake-postgres/postgres-point-in-time-recovery>`를 생성한 경우 해당 포크는 독립적으로 유지되며 영향을 받지 않습니다. 나중에 인스턴스를 더 쉽게 다시 생성하기 위해 DESC POSTGRES INSTANCE를 사용하여 각 인스턴스의 세부 정보를 캡처한 후 삭제할 수 있습니다.

  • 이 명령을 실행하면 Snowflake는 Postgres 인스턴스를 종료하고 연결된 컴퓨팅 리소스를 해제합니다. 인스턴스가 완전히 종료되면 컴퓨팅 리소스에 대한 청구가 중지됩니다.

  • Postgres 인스턴스에 저장된 모든 데이터는 영구적으로 삭제됩니다. 인스턴스를 삭제하기 전에 중요한 데이터를 백업했는지 확인합니다.

  • 인스턴스에 :doc:`고가용성 </user-guide/snowflake-postgres/high-availability>`이 활성화된 경우 HA 대기도 기본 인스턴스와 함께 삭제됩니다.

  • 인스턴스에 :doc:`읽기 전용 복제본 </user-guide/snowflake-postgres/postgres-create-replica>`이 있는 경우, 기본 인스턴스가 삭제될 때 해당 복제본도 삭제됩니다.

  • :doc:`분기된 인스턴스 </user-guide/snowflake-postgres/postgres-point-in-time-recovery>`는 독립적인 복사본입니다. 소스 인스턴스를 삭제해도 해당 인스턴스에서 포크된 인스턴스에는 영향을 주지 않습니다.

  • IF EXISTS 절이 지정되고 대상 오브젝트가 존재하지 않는 경우 이 명령은 오류를 반환하지 않고 성공적으로 완료됩니다.

Postgres 인스턴스를 삭제합니다.

DROP POSTGRES INSTANCE my_postgres;
Copy

Postgres 인스턴스가 있는 경우에만 삭제합니다.

DROP POSTGRES INSTANCE IF EXISTS my_postgres;
Copy

:doc:`흐름 연산자 </sql-reference/operators-flow>`를 사용하여 삭제할 인스턴스를 찾습니다.

-- Find the oldest instance
-- Then use SET and IDENTIFIER() to drop it
SET oldest_instance = (
  SHOW POSTGRES INSTANCES
    ->> SELECT "name"
        FROM $1
        ORDER BY "created_on"
        LIMIT 1
);

DROP POSTGRES INSTANCE IDENTIFIER($oldest_instance);
Copy

삭제하기 전에 저장소 임계값 미만의 인스턴스를 찾습니다.

-- Identify small instances
SHOW POSTGRES INSTANCES
  ->> SELECT "name", "storage_size", "created_on"
      FROM $1
      WHERE "storage_size" < 50
      ORDER BY "storage_size";

DROP some_extremely_small_instance;
Copy

삭제를 시도하기 전에 소유권을 확인합니다.

SHOW GRANTS ON POSTGRES INSTANCE my_postgres;

-- Verify that you have OWNERSHIP privilege, then drop
DROP POSTGRES INSTANCE my_postgres;
Copy