ALTER SNAPSHOT SET¶
Modifica as propriedades de um conjunto de instantâneo. Esta operação pode ser uma das seguintes opções:
Fazer um novo backup que se torne parte do conjunto de instantâneos.
Remover um backup antigo do conjunto de instantâneos.
Suspender ou retomar os backups agendados e a exclusão de instantâneos agendados especificados pela política de instantâneos.
Aplicar uma política de instantâneos a um conjunto de instantâneos que ainda não têm uma política.
Adicionar ou remover uma retenção legal para um instantâneo específico dentro do conjunto de instantâneos.
Especificar ou remover um comentário do conjunto de instantâneos.
- Consulte também:
Sintaxe¶
ALTER SNAPSHOT SET <name> ADD SNAPSHOT
ALTER SNAPSHOT SET <name> APPLY SNAPSHOT POLICY <policy_name>
ALTER SNAPSHOT SET <name> SUSPEND SNAPSHOT POLICY
ALTER SNAPSHOT SET <name> RESUME SNAPSHOT POLICY
ALTER SNAPSHOT SET <name> DELETE SNAPSHOT IDENTIFIER '<snapshot_id>'
ALTER SNAPSHOT SET <name> MODIFY SNAPSHOT IDENTIFIER '<snapshot_id>' { ADD | REMOVE } LEGAL HOLD
ALTER SNAPSHOT SET <name> SET COMMENT = '<string_literal>'
ALTER SNAPSHOT SET <name> UNSET COMMENT
Parâmetros¶
name
Especifica o identificador do conjunto de instantâneos.
Se o identificador contiver espaços ou caracteres especiais, toda a cadeia de caracteres deverá ser delimitada por aspas duplas. Os identificadores delimitados por aspas duplas também diferenciam letras maiúsculas de minúsculas.
Para obter mais informações, consulte Requisitos para identificadores.
ADD SNAPSHOT
Crie um instantâneo no conjunto manualmente. Se a política de instantâneos não incluir um cronograma para fazer novos backups, é assim que você faz um novo backup da tabela, esquema ou banco de dados incluído no conjunto de instantâneos. Também é possível fazer novos backups no conjunto de instantâneos a qualquer momento, mesmo quando os backups acontecem regularmente.
APPLY SNAPSHOT POLICY policy_name
Especifica a política de instantâneos a ser anexada ao conjunto de instantâneos.
Importante
Aplicar uma política de instantâneos com um bloqueio de retenção a um conjunto de instantâneos é irreversível. Devido às sólidas garantias necessárias para a conformidade regulatória, depois de colocar um bloqueio de retenção em um conjunto de instantâneos, não será possível revogar o bloqueio. O suporte Snowflake também não pode revogar esse bloqueio de retenção. Planeje com cuidado antes de definir um bloqueio de retenção em um conjunto de instantâneos com um longo período de expiração, para evitar cobranças inesperadas de armazenamento para conjuntos de instantâneos não excluíveis e para os esquemas e bancos de dados que os contêm.
Se uma organização Snowflake for excluída, ela deixará de ser um cliente Snowflake. Nesse caso, o Snowflake exclui todos os instantâneos, incluindo aqueles com bloqueios de retenção. A exclusão de uma organização Snowflake requer o envolvimento do suporte Snowflake. Não é algo que um administrador possa fazer por acidente.
SUSPEND SNAPSHOT POLICY
Suspenda uma política de instantâneos no conjunto de instantâneos. Para obter mais informações, consulte Suspender uma política de instantâneo em um conjunto de instantâneos.
RESUME SNAPSHOT POLICY
Retome uma política de instantâneos suspensa no conjunto. Para obter mais informações, consulte Retomar uma política de instantâneo em um conjunto de instantâneos.
DELETE SNAPSHOT IDENTIFIER 'snapshot_id'
Exclua um instantâneo no instantâneo definido por ID. O ID do instantâneo é um valor UUID, no formato retornado pela função UUID_STRING. Para obter mais informações, consulte Excluir um instantâneo de um conjunto de instantâneos.
ALTER SNAPSHOT SET name MODIFY SNAPSHOT IDENTIFIER 'snapshot_id' ADD | REMOVE LEGAL HOLD
Adiciona ou remove uma retenção legal de um instantâneo especificado dentro do conjunto de instantâneos. Para obter mais informações sobre retenções legais de instantâneos WORM, consulte Retenção legal. Para exemplos de uso desta cláusula, consulte Adicionar e remover retenções legais.
SET COMMENT = 'string_literal'
Associe um comentário ao conjunto de instantâneos.
UNSET COMMENT
Remova o comentário do conjunto de instantâneos.
Requisitos de controle de acesso¶
A função usada para executar essa operação deve ter, no mínimo, os seguintes privilégios:
Privilégio |
Descrição |
---|---|
OWNERSHIP |
A função usada para modificar um conjunto de instantâneos deve ter o privilégio OWNERSHIP no conjunto de instantâneos. |
APPLY SNAPSHOT RETENTION LOCK |
Se a política de instantâneos aplicada a um conjunto de instantâneos incluir um bloqueio de retenção, a função usada para aplicar a política deve ter esse privilégio na conta. |
APPLY LEGAL HOLD |
Esse privilégio de conta permite adicionar ou remover uma retenção legal de um instantâneo. Esse privilégio só é necessário para as cláusulas ADD LEGAL HOLD e REMOVE LEGAL HOLD. Por padrão, a função ACCOUNTADMIN tem este privilégio. |
APPLY |
Somente um usuário com este privilégio na política de instantâneos pode usar o comando ALTER SNAPSHOT SET com a cláusula APPLY SNAPSHOT POLICY para adicionar a política de instantâneos a um conjunto de instantâneos existente. |
Esses privilégios são exigidos na função primária atualmente ativa, não em uma função secundária.
Para instruções sobre como criar uma função personalizada com um conjunto específico de privilégios, consulte Criação de funções personalizadas.
Para informações gerais sobre concessões de funções e privilégios para executar ações de SQL em objetos protegíveis, consulte Visão geral do controle de acesso.
Notas de uso¶
Em relação aos metadados:
Atenção
Os clientes devem garantir que nenhum dado pessoal (exceto para um objeto do usuário), dados sensíveis, dados controlados por exportação ou outros dados regulamentados sejam inseridos como metadados ao usar o serviço Snowflake. Para obter mais informações, consulte Campos de metadados no Snowflake.
Importante
Se a política de instantâneos tiver um bloqueio de retenção aplicado a ela e houver quaisquer instantâneos não expirados no conjunto de instantâneos, não será possível excluir o conjunto de instantâneos. Nesse caso, você deve aguardar até que todos os instantâneos no conjunto expirem. Esta restrição aplica-se até mesmo a funções privilegiadas como ACCOUNTADMIN, e ao suporte Snowflake. Por esse motivo, tenha cuidado ao especificar o bloqueio de retenção e um longo período de expiração em uma política de instantâneo.
Exemplos¶
Adicionar manualmente um instantâneo ao conjunto de instantâneos t1_snapshots
:
ALTER SNAPSHOT SET t1_snapshots
ADD SNAPSHOT;
Atualizar a política de instantâneos para conjunto de instantâneos t1_snapshots
:
ALTER SNAPSHOT SET t1_snapshots
APPLY SNAPSHOT POLICY daily_snapshot_policy;
Suspender uma política de instantâneos no conjunto de instantâneos t1_snapshot
:
ALTER SNAPSHOT SET t1_snapshots
SUSPEND SNAPSHOT POLICY;
Retomar uma política de instantâneos no conjunto de instantâneos t1_snapshots
:
ALTER SNAPSHOT SET t1_snapshots
RESUME SNAPSHOT POLICY;
Para encontrar o identificador de instantâneo a ser usado com as cláusulas ADD LEGAL HOLD e REMOVE LEGAL HOLD, você normalmente usa o comando SHOW SNAPSHOTS para listar os instantâneos elegíveis e seus horários de criação. O exemplo a seguir mostra como você pode listar os instantâneos apropriados, adicionar uma retenção legal a um instantâneo específico e, posteriormente, remover essa retenção legal. Substitua seu próprio nome de função, nome do conjunto de instantâneos e identificador de instantâneos.
USE ROLE my_legal_hold_role; -- use a role that has the APPLY LEGAL HOLD privilege
SHOW SNAPSHOTS IN SNAPSHOT SET my_db_snapshot_set
->> SELECT "created_on", "snapshot_id" FROM $1 WHERE "is_under_legal_hold" = 'N';
ALTER SNAPSHOT SET my_db_snapshot_set
MODIFY SNAPSHOT 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 SNAPSHOTS IN SNAPSHOT SET my_db_snapshot_set
->> SELECT "created_on", "snapshot_id" FROM $1 WHERE "is_under_legal_hold" = 'Y';
ALTER SNAPSHOT SET my_db_snapshot_set
MODIFY SNAPSHOT IDENTIFIER '790d1ee4-88b2-451f-9ccc-eacd1e93a134'
REMOVE LEGAL HOLD;