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>
매개 변수¶
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;
Postgres 인스턴스가 있는 경우에만 삭제합니다.
DROP POSTGRES INSTANCE IF EXISTS my_postgres;
: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);
삭제하기 전에 저장소 임계값 미만의 인스턴스를 찾습니다.
-- 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;
삭제를 시도하기 전에 소유권을 확인합니다.
SHOW GRANTS ON POSTGRES INSTANCE my_postgres;
-- Verify that you have OWNERSHIP privilege, then drop
DROP POSTGRES INSTANCE my_postgres;