UNDROP SNAPSHOT

참고

이 작업은 현재 Snowflake의 지원 정책 및 서비스 수준 계약 에 명시된 서비스 수준에 포함되지 않습니다.

이전에 제거된 :doc:`블록 저장소 볼륨의 스냅샷</developer-guide/snowpark-container-services/block-storage-volume>`을 복원합니다. Snowflake가 스냅샷을 복원한 후 데이터를 사용할 수 있습니다.

참고 항목:

스냅샷 관리하기, DROP SNAPSHOT, CREATE SNAPSHOT

구문

UNDROP SNAPSHOT { <name> | IDENTIFIER( <id> ) }
 [ RENAME TO <new_snapshot_name> ];
Copy

매개 변수

name

복원할 스냅샷의 이름을 지정합니다. 스냅샷 이름을 지정하면 명령은 해당 이름으로 가장 최근에 삭제된 스냅샷을 복원합니다.

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

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

IDENTIFIER( id )

복원할 스냅샷의 시스템 생성 식별자를 지정합니다.

이름이 같은 스냅샷을 여러 개 삭제한 경우 :doc:`/sql-reference/account-usage/block_storage_snapshots`를 쿼리하여 복원하려는 삭제된 스냅샷의 시스템 생성 식별자를 가져옵니다. 그런 다음, :doc:`IDENTIFIER 키워드</sql-reference/identifier-literal>`를 사용하여 이 스냅샷을 복원하도록 지정합니다. 복원된 스냅샷은 원래 이름을 유지합니다.

시스템 생성 식별자로 스냅샷을 복원하는 예제에 대해서는 섹션을 참조하세요.

참고

노트북, 테이블, 블록 저장소 스냅샷, 스키마, 데이터베이스에 대해 UNDROP 명령을 실행할 때 IDENTIFIER() 키워드와 함께 시스템에서 생성된 식별자만 사용할 수 있습니다.

RENAME TO new_snapshot_name

스냅샷이 복원된 후 스냅샷의 이름을 지정합니다. 이를 통해 스냅샷을 다른 이름으로 복원할 수 있습니다.

액세스 제어 요구 사항

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

권한

오브젝트

참고

OWNERSHIP

스냅샷

OWNERSHIP is a special privilege on an object that is automatically granted to the role that created the object, but can also be transferred using the GRANT OWNERSHIP command to a different role by the owning role (or any role with the MANAGE GRANTS privilege).

스키마의 모든 오브젝트에 대해 작업을 수행하려면 상위 데이터베이스 및 스키마에 대한 USAGE 권한. 스키마에 대한 특정 권한을 부여받은 역할은 해당 스키마를 확인할 수 있습니다. 예를 들어, 스키마에 대해 CREATE 권한을 부여받은 역할은 해당 스키마에 대한 USAGE 권한을 함께 부여받지 않더라도 해당 스키마에 대한 오브젝트를 생성할 수 있습니다.

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

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

사용법 노트

  • 스냅샷은 삭제 시점에 스냅샷이 있던 데이터베이스와 스키마로만 복원될 수 있습니다. 예를 들어, 스키마 ``s1``에서 스냅샷을 생성하고 삭제한 다음, 세션의 현재 스키마를 ``s2``로 변경하고 스냅샷의 삭제를 취소하려고 시도하면 스냅샷이 현재 스키마 ``s2``가 아닌 스키마 ``s1``에 복원됩니다.

  • 같은 이름의 스냅샷이 이미 있는 경우 UNDROP SNAPSHOT은 오류를 반환합니다. 이 경우 RENAME TO 매개 변수를 사용하여 다른 이름을 지정할 수 있는 옵션이 있습니다.

  • UNDROP SNAPSHOT은 Snowflake Time Travel 기능에 의존합니다. 오브젝트가 데이터 보존 기간 내에서 삭제된 경우에만 오브젝트를 복원할 수 있습니다. 기본 보존 기간은 24시간입니다. 데이터 보존 기간이 경과한 후에는 스냅샷을 복원할 수 없습니다.

이름을 사용하여 스냅샷 복원

다음 예에서는 이름이 ``example_snapshot``인 이전에 삭제한 스냅샷을 복원합니다.

UNDROP SNAPSHOT example_snapshot;
Copy
+--------------------------------------------------+
| status                                           |
|--------------------------------------------------|
| Snapshot EXAMPLE_SNAPSHOT successfully restored. |
+--------------------------------------------------+

ID를 사용하여 스냅샷 복원

IDENTIFIER()</sql-reference/identifier-literal>`를 사용하여 ID로 삭제된 스냅샷을 복원합니다. :doc:/sql-reference/account-usage/block_storage_snapshots` 뷰에서 snapshot_id 열을 사용하여 복원할 특정 스냅샷의 스냅샷 ID를 찾을 수 있습니다. 예를 들어, 이름이 ``MY_SNAPSHOT``인 삭제된 스키마가 여러 개 있고 마지막에서 두 번째로 삭제된 스냅샷 ``MY_SNAPSHOT``을 복원하려는 경우 다음 단계를 따르세요.

  1. Account Usage LOCK_STORAGE_SNAPSHOTS 뷰에서 삭제된 테이블의 테이블 ID를 찾습니다.

    SELECT snapshot_id,
        snapshot_name,
        database_name,
        schema_name,
        created_on,
        deleted_on
      FROM SNOWFLAKE.ACCOUNT_USAGE.BLOCK_STORAGE_SNAPSHOTS
      WHERE database_name = 'TUTORIAL_DB'
        AND schema_name = 'DATA_SCHEMA'
        AND snapshot_name = 'MY_SNAPSHOT'
        AND deleted_on IS NOT NULL
      ORDER BY deleted_on;
    
    Copy

    출력 예:

    +-------------+---------------+---------------+-------------+-------------------------------+-------------------------------+
    | SNAPSHOT_ID | SNAPSHOT_NAME | DATABASE_NAME | SCHEMA_NAME | CREATED_ON                    | DELETED_ON                    |
    |-------------+---------------+---------------+-------------+-------------------------------+-------------------------------|
    |           1 | MY_SNAPSHOT   | TUTORIAL_DB   | DATA_SCHEMA | 2025-09-06 09:51:47.131 -0700 | 2025-09-15 14:21:49.683 -0700 |
    +-------------+---------------+---------------+-------------+-------------------------------+-------------------------------+
    
  2. 스냅샷 ID별 ``MY_SNAPSHOT``의 삭제를 취소합니다. 마지막에서 두 번째로 삭제된 스냅샷을 복원하려면 이전 문의 출력에서 스냅샷 ID 1을 사용하세요.

    다음 문을 실행하면 스냅샷이 원래 이름인 ``MY_SNAPSHOT``으로 복원됩니다.

    UNDROP SNAPSHOT IDENTIFIER(1);
    
    Copy