Help us improve the AWS re:Post Knowledge Center by sharing your feedback in a brief survey. Your input can influence how we create and update our content to better support your AWS journey.
Como soluciono problemas de restauração de snapshots do meu cluster de banco de dados compatível com o PostgreSQL do Aurora?
Quero solucionar erros de restauração de snapshot ao restaurar meu snapshot de cluster de banco de dados da edição do Amazon Aurora compatível com PostgreSQL.
Resolução
Observação: se você receber erros ao executar comandos da AWS Command Line Interface (AWS CLI), consulte Solução de problemas da AWS CLI. Além disso, verifique se você está usando a versão mais recente da AWS CLI.
Antes de solucionar erros de restauração de snapshot, verifique se seu snapshot é compatível com sua configuração de destino e se você tem as permissões necessárias.
Verifique a compatibilidade do snapshot antes da restauração
Antes de restaurar um snapshot, verifique a compatibilidade da versão para evitar erros.
Verifique o status do snapshot e a versão do mecanismo
É possível usar o console ou a AWS CLI para verificar a compatibilidade da versão antes de restaurar um snapshot.
Para usar o console, conclua as seguintes etapas:
- Abra o console do Amazon Relational Database Service (Amazon RDS).
- Clique em Snapshots.
- Selecione seu snapshot.
- Clique na guia Detalhes e confirme as seguintes configurações:<br id=hardline_break/> Verifique se o parâmetro Engine é aurora-postgresql.<br id=hardline_break/> Confirme se a versão do mecanismo é compatível com a versão do seu destino.<br id=hardline_break/> Certifique-se de que o Status esteja definido como Disponível.
Para usar a AWS CLI para listar todas as versões disponíveis do Aurora compatíveis com o PostgreSQL do Aurora, execute o seguinte comando describe-db-engine-versions:
aws rds describe-db-engine-versions \ --engine aurora-postgresql \ --query "DBEngineVersions[?EngineVersion=='your-snapshot-version'].ValidUpgradeTarget[*].EngineVersion" \ --region your-region
Observação: substitua your-snapshot-version pela versão do mecanismo do seu snapshot e your-region pela sua região da AWS.
Verifique as permissões do IAM
Certifique-se de que seu usuário ou perfil do AWS Identity and Access Management (AWS IAM) tenha as permissões necessárias para restaurar um snapshot.
Para verificar suas permissões atuais, execute o seguinte comando get-user da AWS CLI:
aws iam get-user --region your-region
Observação: substitua your-region pela sua região da AWS.
Exemplo de política do IAM:
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "rds:RestoreDBClusterFromSnapshot", "rds:CreateDBInstance", "rds:DescribeDBSnapshots", "rds:DescribeDBClusters", "rds:DescribeDBInstances" ], "Resource": "*" } ] }
Resolva erros de permissão do IAM
Se você não tiver as permissões necessárias do Amazon RDS, receberá a seguinte mensagem de erro:
"User is not authorized to perform: rds:RestoreDBClusterFromSnapshot"
Para resolver esse erro, adicione as permissões necessárias do Amazon RDS à sua política do IAM. Conclua as etapas a seguir:
-
Abra o console do IAM.
-
No painel de navegação, clique em Usuários ou Perfis.
-
Selecione seu nome de usuário ou perfil.
-
Clique em Adicionar permissões.
-
Selecione Criar política em linha ou edite uma política que já esteja anexada à entidade do IAM.
-
Clique na guia JSON.
-
Insira a política que inclui as permissões necessárias para a restauração de snapshots:
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "rds:RestoreDBClusterFromSnapshot", "rds:CreateDBInstance", "rds:DescribeDBSnapshots", "rds:DescribeDBClusterSnapshots", "rds:DescribeDBClusters", "rds:DescribeDBInstances" ], "Resource": "*" } ] } -
Clique em Próximo.
-
Insira um nome de política. Por exemplo, insira RDSSnapshotRestorePolicy.
-
Selecione Criar política.
Resolva erros de permissão de criptografia do AWS KMS
Se você tentar restaurar um snapshot criptografado sem as permissões adequadas do AWS Key Management Service (AWS KMS), receberá uma das seguintes mensagens de erro:
"Unable to restore from encrypted snapshot"
"KMS key access denied"
Para resolver o erro, verifique a chave do AWS KMS que seu snapshot usa e, em seguida, adicione as permissões necessárias do AWS KMS à sua política do IAM.
Para verificar a chave do AWS KMS que seu snapshot usa, execute o seguinte comando describe-db-cluster-snapshots:
aws rds describe-db-cluster-snapshots \ --db-cluster-snapshot-identifier your-snapshot-id \ --region your-region
Observação: substitua your-snapshot-id pelo identificador do seu snapshot e your-region pela sua região da AWS.
Em seguida, adicione as permissões do AWS KMS à sua política do IAM:
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "kms:Decrypt", "kms:CreateGrant", "kms:DescribeKey", "kms:GenerateDataKey" ], "Resource": "arn:aws:kms:region:account-id:key/key-id" } ] }
Observação: substitua region pela sua região da AWS, account-id pelo ID da sua conta da AWS e key-id pelo ID da sua chave do AWS KMS.
Resolva erros de snapshot não encontrado
Se você tentar restaurar a partir de um snapshot que não existe ou que não consegue acessar, receberá a seguinte mensagem de erro:
"DBClusterSnapshotNotFoundFault: DBClusterSnapshot snapshot-id not found"
Para resolver esse erro, verifique se o snapshot existe e se você tem permissões de acesso.
Para listar os snapshots disponíveis em sua conta, execute o seguinte comando describe-db-cluster-snapshots:
aws rds describe-db-cluster-snapshots \ --region your-region
Observação: substitua your-region pela sua região da AWS.
Se o snapshot for compartilhado de outra conta da AWS, verifique se ele foi compartilhado com sua conta e se você aceitou o compartilhamento.
Resolva erros de parâmetro inválido
Se você especificar uma classe de instância incompatível durante a restauração, receberá a seguinte mensagem de erro:
"InvalidParameterValue: Invalid DB Instance class"
Para resolver esse erro, escolha uma classe de instância compatível com a edição compatível com PostgreSQL do Aurora.
Para listar classes de instância válidas para sua versão do mecanismo de destino, execute o seguinte comando describe-orderable-db-instance-options:
aws rds describe-orderable-db-instance-options \ --engine aurora-postgresql \ --engine-version your-version \ --region your-region
Observação: substitua your-version pela sua versão do PostgreSQL, por exemplo, 15.4. Substitua your-region pela sua região da AWS.
Analise a saída e escolha uma classe de instância que ofereça suporte à sua versão do mecanismo de destino e aos recursos necessários.
Resolva erros de grupo de sub-redes
Se você especificar uma sub-rede inválida durante a restauração, receberá a seguinte mensagem de erro:
"InvalidSubnet: The requested subnet is not valid"
Para resolver esse erro, verifique se seu grupo de sub-redes de banco de dados tem sub-redes em várias Zonas de disponibilidade.
Para verificar a configuração do seu grupo de sub-redes, execute o seguinte comando describe-db-subnet-groups:
aws rds describe-db-subnet-groups \ --db-subnet-group-name your-subnet-group \ --region your-region
Observação: substitua your-subnet-group pelo nome do seu grupo de sub-redes de banco de dados e your-region pela sua região da AWS.
Verifique se o grupo de sub-redes contém sub-redes em pelo menos duas Zonas de disponibilidade. Se o grupo de sub-redes não tiver sub-redes em várias Zonas de disponibilidade, é possível modificar o grupo de sub-redes para adicionar sub-redes em outras Zonas de disponibilidade.
Resolva erros de acesso à chave do AWS KMS entre contas
Se você tentar restaurar um snapshot criptografado compartilhado de outra conta da AWS sem as devidas permissões do AWS KMS, receberá a seguinte mensagem de erro:
"AccessDenied: Cross-account pass role is not allowed"
Para resolver esse erro, certifique-se de que a política de chave do AWS KMS permita o acesso entre contas e que seu perfil do IAM tenha as permissões necessárias.
Para verificar a política de chave do AWS KMS, execute o seguinte comando get-key-policy:
aws kms get-key-policy \ --key-id your-key-id \ --policy-name default \ --region your-region
Observação: substitua your-key-id pelo ID da sua chave do AWS KMS e your-region pela sua região da AWS.
Verifique se a política de chave inclui uma declaração que concede à sua conta da AWS acesso para descriptografar e criar concessões. Se não for possível atualizar a política de chave do AWS KMS, entre em contato com o proprietário do snapshot para atualizar a política de chave do AWS KMS.
Em snapshots criptografados entre contas, não é possível restaurar diretamente do snapshot compartilhado. Em vez disso, use sua própria chave do AWS KMS para copiar o snapshot compartilhado para sua conta e, em seguida, restaurar a partir da cópia. Para obter mais informações, consulte Compartilhamento de snapshots criptografados.
Resolva problemas de compatibilidade da versão do mecanismo
Se você tentar restaurar para uma versão incompatível do mecanismo, poderá receber uma mensagem de erro durante o processo de restauração.
Para resolver, certifique-se de que a versão do seu destino seja igual ou superior à versão do PostgreSQL do snapshot. Não é possível restaurar para uma versão inferior.
Para verificar as versões compatíveis do PostgreSQL do Aurora que estão disponíveis, execute o seguinte comando describe-db-engine-versions:
aws rds describe-db-engine-versions \ --engine aurora-postgresql \ --region your-region
Observação: substitua your-region pela sua região da AWS.
Analise a saída para identificar as versões de mecanismo compatíveis com o destino da sua restauração.
Resolva problemas de compatibilidade de classe de instância
Se você selecionar uma classe de instância que não seja compatível com a versão do mecanismo de destino ou com os recursos necessários, a restauração pode falhar.
Para resolver esse problema, selecione uma classe de instância que tenha o armazenamento e a memória necessários para seu workload. Verifique se a classe da instância oferece suporte à versão compatível com o PostgreSQL do Aurora que você está restaurando e se oferece suporte a qualquer recurso específico, como o Insights de Performance.
Para verificar a compatibilidade da classe da instância, execute o comando describe-orderable-db-instance-options:
aws rds describe-orderable-db-instance-options \ --engine aurora-postgresql \ --engine-version your-version \ --region your-region
Observação: substitua your-version pela sua versão do PostgreSQL, por exemplo, 15.4. Substitua your-region pela sua região da AWS.
Informações relacionadas
Restauração de um snapshot de um cluster de banco de dados
Compartilhar um snapshot do cluster de banco de dados
- Tópicos
- Database
- Idioma
- Português

Conteúdo relevante
- feita há um ano
- feita há 6 meses