백업 세트 수정하기
백업 세트 수정하기 (ALTER BACKUP SET)
- 백업은 모든 Snowflake 에디션에서 사용할 수 있어요.
- 보존 잠금(retention lock)이 적용된 백업과 법적 보존(legal hold)이 적용된 백업은 Business Critical Edition(이상)에서 사용할 수 있어요. 업그레이드에 대해 문의하려면 Snowflake Support에 연락해 주세요.
백업 세트의 속성을 수정해요. 이 작업은 다음 중 하나일 수 있어요:
- 백업 세트의 일부가 되는 새 백업을 생성해요.
- 백업 세트에서 오래된 백업을 제거해요.
- 백업 정책에 지정된 예약 백업과 예약 백업 삭제를 일시 중지하거나 재개해요.
- 아직 정책이 없는 백업 세트에 백업 정책을 적용해요.
- 백업 세트 내 특정 백업에 법적 보존을 추가하거나 제거해요.
- 백업 세트의 이름을 변경해요.
- 백업 세트 내 특정 백업에 대한 주석을 지정하거나 제거해요.
- 백업 세트에 대한 주석을 지정하거나 제거해요.
함께 보기:
CREATE BACKUP SET, DROP BACKUP SET, SHOW BACKUP SETS
출처: 문서
본문
구문
ALTER BACKUP SET ADD BACKUP
ALTER BACKUP SET APPLY BACKUP POLICY [ FORCE ]
ALTER BACKUP SET SUSPEND BACKUP [ { CREATION | EXPIRATION } ] POLICY
ALTER BACKUP SET RESUME BACKUP [ { CREATION | EXPIRATION } ] POLICY
ALTER BACKUP SET DELETE BACKUP IDENTIFIER ''
ALTER BACKUP SET MODIFY BACKUP IDENTIFIER '' { ADD | REMOVE } LEGAL HOLD
ALTER BACKUP SET MODIFY BACKUP IDENTIFIER '' SET COMMENT = ''
ALTER BACKUP SET MODIFY BACKUP IDENTIFIER '' UNSET COMMENT
ALTER BACKUP SET RENAME TO
ALTER BACKUP SET SET COMMENT = ''
ALTER BACKUP SET UNSET COMMENT
ALTER BACKUP SET SET TAG = '' [ , = '' ... ]
ALTER BACKUP SET UNSET TAG [ , ... ]
매개 변수
name
백업 세트의 식별자를 지정합니다.
식별자에 공백이나 특수 문자가 포함된 경우 전체 문자열을 큰따옴표로 묶어야 합니다. 큰따옴표로 묶인 식별자는 대/소문자를 구분합니다.
자세한 내용은 Identifier requirements를 참조하세요.
ADD BACKUP
백업 세트에 백업을 수동으로 생성합니다. 백업 정책에 새 백업을 만드는 일정이 포함되어 있지 않다면, 백업 세트에 포함된 테이블, 스키마 또는 데이터베이스의 새 백업을 만드는 방법이 바로 이것입니다. 또한 백업이 정기 일정으로 수행되는 경우에도 언제든지 백업 세트에 새 백업을 만들 수 있습니다.
APPLY BACKUP POLICY policy_name [ FORCE ]
백업 세트에 연결할 백업 정책을 지정합니다.
FORCE 옵션은 백업 세트의 기존 정책을 덮어씁니다. 이 옵션은 이전 정책에 보존 잠금이 없는 경우에만 사용할 수 있습니다.
보존 잠금이 있는 백업 정책을 백업 세트에 적용하는 것은 되돌릴 수 없습니다. 규정 준수에 필요한 강력한 보증 때문에 백업 세트에 보존 잠금을 설정한 후에는 잠금을 해제할 수 없습니다. Snowflake 지원 팀도 이러한 보존 잠금을 해제할 수 없습니다. 만료 기간이 긴 백업 세트에 보존 잠금을 설정하기 전에 신중하게 계획하여, 삭제할 수 없는 백업 세트와 이를 포함하는 스키마 및 데이터베이스에 대한 예상치 못한 스토리지 비용이 발생하지 않도록 하세요.
Snowflake 조직이 삭제되면 해당 조직은 더 이상 Snowflake 고객이 아닙니다. 이 경우 Snowflake는 보존 잠금이 있는 백업을 포함한 모든 백업을 삭제합니다. Snowflake 조직을 삭제하려면 Snowflake 지원 팀의 개입이 필요합니다. 관리자가 실수로 수행할 수 있는 작업이 아닙니다.
SUSPEND BACKUP [ { CREATION | EXPIRATION } ] POLICY
백업 세트의 백업 정책을 일시 중단합니다. 전체 백업 정책을 일시 중단하거나 생성 또는 만료 작업만 일시 중단할 수 있습니다. CREATION 또는 EXPIRATION 키워드 없이 SUSPEND BACKUP POLICY를 지정하면 Snowflake는 정책의 생성 및 만료 측면을 모두 일시 중단합니다. 자세한 내용은 를 참조하세요.
RESUME BACKUP [ { CREATION | EXPIRATION } ] POLICY
백업 세트에서 일시 중단된 백업 정책을 다시 시작합니다. 전체 백업 정책을 다시 시작하거나 생성 또는 만료 작업만 다시 시작할 수 있습니다. CREATION 또는 EXPIRATION 키워드 없이 RESUME BACKUP POLICY를 지정하면 Snowflake는 정책의 생성 및 만료 측면을 모두 다시 시작합니다. 자세한 내용은 를 참조하세요.
DELETE BACKUP IDENTIFIER 'backup_id'
ID로 백업 세트의 백업을 삭제합니다. 백업 ID는 UUID_STRING 함수가 반환하는 형식의 UUID 값입니다. Snowflake는 백업 세트에서 가장 오래된 백업만 삭제할 수 있습니다. 자세한 내용은 를 참조하세요.
MODIFY BACKUP IDENTIFIER 'backup_id' { ADD | REMOVE } LEGAL HOLD
백업 세트 내의 지정된 백업에 법적 보존(legal hold)을 추가하거나 제거합니다. WORM 백업의 법적 보존에 대한 자세한 내용은 를 참조하세요. 이 절 사용 예는 를 참조하세요.
MODIFY BACKUP IDENTIFIER 'backup_id' SET COMMENT = 'string_literal'
백업 세트 내의 특정 백업에 주석을 연결합니다.
MODIFY BACKUP IDENTIFIER 'backup_id' UNSET COMMENT
백업 세트 내의 특정 백업에서 주석을 제거합니다.
RENAME TO new_name
백업 세트의 새 식별자를 지정합니다. 계정 내에서 고유해야 합니다.
자세한 내용은 Identifier requirements를 참조하세요.
SET COMMENT = 'string_literal'
백업 세트에 주석을 연결합니다.
TAG tag_name = 'tag_value' [ , tag_name = 'tag_value' , ... ]
tag 이름과 태그 문자열 값을 지정합니다.
태그 값은 항상 문자열이며, 태그 값의 최대 문자 수는 256자입니다.
문에서 태그를 지정하는 방법에 대한 자세한 내용은 를 참조하세요.
UNSET ...
백업 세트에서 설정 해제할 하나 이상의 속성 및/또는 매개 변수를 지정합니다. 그러면 해당 속성/매개 변수가 기본값으로 재설정됩니다.
- property_name
- param_name
COMMENT- TAG tag_name [ , tag_name ... ]
단일 ALTER 문으로 여러 속성/매개 변수를 재설정할 수 있습니다. 단, 각 속성/매개 변수는 쉼표로 구분해야 합니다. 또한 속성/매개 변수를 재설정할 때는 이름만 지정하면 되며 값은 필요하지 않습니다.
액세스 제어 요구 사항
이 작업을 실행하는 데 사용되는 role에는 최소한 다음 privileges이 있어야 합니다.
| Privilege | 설명 |
|---|---|
| OWNERSHIP | 백업 세트를 수정하는 데 사용되는 역할은 백업 세트에 대한 OWNERSHIP 권한이 있어야 해요. |
| APPLY BACKUP RETENTION LOCK | 백업 정책에 보존 잠금이 포함된 경우, 백업 세트의 소유자 역할은 계정에 대해 이 권한이 있어야 해요. |
| APPLY LEGAL HOLD | 이 계정 권한은 백업에 법적 보존을 추가하거나 제거할 수 있는 기능을 부여해요. 이 권한은 ADD LEGAL HOLD 및 REMOVE LEGAL HOLD 절에만 필요해요. 기본적으로 ACCOUNTADMIN 역할에 이 권한이 있어요. |
| APPLY | 백업 세트의 소유자 역할은 백업 정책에 대해 이 권한을 직접 또는 역할 계층 구조를 통해 보유해야 해요. |
백업 정책에 대한 APPLY 권한과 계정에 대한 APPLY BACKUP RETENTION LOCK 권한은 백업 세트의 소유자 역할(즉, 백업 세트에 대한 OWNERSHIP을 보유한 역할)에 직접 또는 역할 계층 구조 상속을 통해 간접적으로 부여되어야 해요. 백그라운드 스냅샷 생성 작업은 백업 세트의 소유자 역할로 실행되므로, 해당 역할은 정책이 적용된 후 정책을 사용할 수 있어야 해요.
지정된 권한 집합을 가진 사용자 지정 역할을 만드는 방법은 을(를) 참조하세요.
SQL 작업을 securable objects에 대해 수행하기 위한 역할 및 권한 부여에 대한 일반 정보는 Overview of Access Control을 참조하세요.
사용 참고 사항
- 메타데이터 관련:
고객은 Snowflake 서비스를 사용할 때 메타데이터로 개인 데이터(User object에 대한 데이터 제외), 민감한 데이터, 수출 통제 데이터 또는 기타 규제 대상 데이터를 입력하지 않도록 해야 해요. 자세한 내용은 Metadata fields in Snowflake을 참조하세요.
백업 정책에 보존 잠금이 적용되어 있고 백업 세트에 만료되지 않은 백업이 있으면 백업 세트를 삭제할 수 없어요. 이 경우 세트의 모든 백업이 만료될 때까지 기다려야 해요. 이 제한은 ACCOUNTADMIN과 같은 권한 있는 역할과 Snowflake 지원에도 적용돼요. 따라서 백업 정책에서 보존 잠금과 긴 만료 기간을 지정할 때 주의해야 해요.
예제
백업 세트 t1_backups에 백업을 수동으로 추가하려면:
ALTER BACKUP SET t1_backups
ADD BACKUP;
백업 세트 t1_backups의 백업 정책을 업데이트하려면:
ALTER BACKUP SET t1_backups
APPLY BACKUP POLICY daily_backup_policy;
백업 세트 t1_backup에서 백업 정책을 일시 중지하려면:
ALTER BACKUP SET t1_backups
SUSPEND BACKUP POLICY;
백업 세트 t1_backups에서 백업 정책을 재개하려면:
ALTER BACKUP SET t1_backups
RESUME BACKUP POLICY;
백업 세트 t1_backups의 이름을 table1_backups로 바꾸려면:
ALTER BACKUP SET t1_backups
RENAME TO table1_backups;
ADD LEGAL HOLD 및 REMOVE LEGAL HOLD 절과 함께 사용할 백업 식별자를 찾으려면 일반적으로 SHOW BACKUPS 명령을 사용하여 적격 백업과 생성 시간을 나열해요. 다음 예제는 적절한 백업을 나열하고, 특정 백업에 법적 보존을 추가하고, 나중에 해당 법적 보존을 제거하는 방법을 보여줘요. 자신의 역할 이름, 백업 세트 이름, 백업 식별자로 바꿔서 사용하세요.
USE ROLE my_legal_hold_role; -- use a role that has the APPLY LEGAL HOLD privilege
SHOW BACKUPS IN BACKUP SET my_db_backup_set
->> SELECT "created_on", "backup_id" FROM $1 WHERE "is_under_legal_hold" = 'N';
ALTER BACKUP SET my_db_backup_set
MODIFY BACKUP IDENTIFIER '790d1ee4-88b2-451f-9ccc-eacd1e93a134'
ADD LEGAL HOLD;
USE ROLE my_legal_hold_role; -- use a role that has the APPLY LEGAL HOLD privilege
SHOW BACKUPS IN BACKUP SET my_db_backup_set
->> SELECT "created_on", "backup_id" FROM $1 WHERE "is_under_legal_hold" = 'Y';
ALTER BACKUP SET my_db_backup_set
MODIFY BACKUP IDENTIFIER '790d1ee4-88b2-451f-9ccc-eacd1e93a134'
REMOVE LEGAL HOLD;
특정 백업에 대한 주석을 추가하거나 제거하려면 백업 식별자를 사용해요. 다음 예제는 백업 식별자를 찾아 주석을 추가한 다음 동일한 백업에서 주석을 제거하는 방법을 보여줘요:
SHOW BACKUPS IN BACKUP SET my_db_backup_set
->> SELECT "created_on", "backup_id" FROM $1
ORDER BY "created_on" DESC LIMIT 1;
ALTER BACKUP SET my_db_backup_set
MODIFY BACKUP IDENTIFIER '790d1ee4-88b2-451f-9ccc-eacd1e93a134'
SET COMMENT = 'Database state after CI/CD deployment at git commit 8f201bf.';
ALTER BACKUP SET my_db_backup_set
MODIFY BACKUP IDENTIFIER '790d1ee4-88b2-451f-9ccc-eacd1e93a134'
UNSET COMMENT;