Restaurei um snapshot de um cluster do Amazon Redshift, mas algumas tabelas estão ausentes no snapshot. Como fazer backup de tabelas ausentes?
Descrição resumida
Tabelas criadas como tabelas sem backup são excluídas dos snapshots do Amazon Redshift. Verifique se o Amazon Redshift excluiu sua tabela porque ela foi criada usando o parâmetro BACKUP NO. Em seguida, realize uma cópia detalhada.
Resolução
Para fazer backup de tabelas ausentes do seu snapshot do Amazon Redshift, execute as seguintes etapas:
-
Verifique a linguagem de definição de dados (DDL) das tabelas ausentes no snapshot.
-
Se o DDL da tabela não estiver disponível, execute a seguinte consulta como superuser:
SELECT DISTINCT Rtrim(n.nspname) AS schema_name,
Rtrim(name) AS table_name,
backup
FROM stv_tbl_perm t
join pg_class c
ON t.id = c.oid
join pg_namespace n
ON n.oid = c.relnamespace
ORDER BY 1,2;
A consulta acima identifica tabelas no banco de dados conectado que não são copiadas no snapshot. Ela consulta STV_TBL_PERM, a tabela do sistema que só é visível para contas do superuser. Para obter mais informações sobre visualizações que estão disponíveis somente para superusers, consulte Visibilidade de dados em tabelas e visualizações do sistema.
Observação: um valor de 0 para a coluna de backup indica que a tabela foi criada usando o parâmetro BACKUP NO. Você não pode alterar uma tabela existente no Amazon Redshift usando o parâmetro BACKUP YES.
-
Se a sua tabela foi criada como uma tabela sem backup, recrie-a sem o parâmetro BACKUP NO.
-
Realize uma cópia detalhada das tabelas ausentes.
Informações relacionadas
Parâmetros CREATE TABLE AS
Snapshots do Amazon Redshift