Criar tarefas de exportação de snapshot - Amazon Aurora

Criar tarefas de exportação de snapshot

Crie tarefas de exportação de snapshot para exportar dados do snapshot para um bucket do Amazon S3. Você pode ter até cinco tarefas de exportação de snapshot de banco de dados simultâneas em andamento por Conta da AWS.

nota

A exportação de snapshots do RDS pode levar um tempo, dependendo do tipo e do tamanho do banco de dados. A tarefa de exportação primeiro restaura e escala todo o banco de dados antes de extrair os dados para o Amazon S3. O andamento da tarefa durante essa fase é exibido como Starting (Iniciando). Quando a tarefa muda para a exportação de dados para o S3, o andamento é exibido como In progress (Em andamento).

O tempo necessário para que a exportação seja concluída depende dos dados armazenados no banco de dados. Por exemplo, tabelas com chaves primárias numéricas bem distribuída ou colunas de índice serão exportadas de maneira mais rápida. Tabelas sem uma coluna adequada para particionamento e tabelas com somente um índice em uma coluna baseada em string demorarão mais. Esse tempo de exportação mais demorado ocorre porque a exportação utiliza um processo de thread único mais lento.

Você pode exportar um snapshot de banco de dados para o Amazon S3 usando o AWS Management Console, a AWS CLI ou a API do RDS.

Se você usar uma função do Lambda para exportar um snapshot, adicione a ação kms:DescribeKey à política da função do Lambda. Para ter mais informações, consulte Permissões doAWS Lambda.

A opção de console Export to Amazon S3 (Exportar para o Amazon S3) é exibido somente para snapshots que podem ser exportados para o Amazon S3. Um snapshot pode não estar disponível para exportação devido aos seguintes motivos:

  • O mecanismo de banco de dados não tem suporte para exportação do S3.

  • A versão da instância de banco de dados não tem suporte para exportação do S3.

  • A exportação do S3 não é aceita na região da AWS onde o snapshot foi criado.

Para exportar um snapshot de banco de dados
  1. Faça login no AWS Management Console e abra o console do Amazon RDS em https://console.aws.amazon.com/rds/.

  2. No painel de navegação, escolha Snapshots.

  3. Nas guias, escolha o tipo de snapshot que deseja exportar.

  4. Na lista de snapshots, escolha o snapshot que deseja exportar.

  5. Em Actions (Ações), escolha Export to Amazon S3 (Exportar para o Amazon S3).

    A janela Export to Amazon S3 (Exportar para o Amazon S3) é exibida.

  6. Em Export identifier (Identificador de exportação), insira um nome para identificar a tarefa de exportação. Esse valor também é usado para o nome do arquivo criado no bucket do S3.

  7. Escolha os dados a serem exportados:

    • Escolha All (Tudo) para exportar todos os dados do snapshot.

    • Escolha Partial (Parcial) para exportar partes específicas do snapshot. Para identificar quais partes do snapshot exportar, insira um ou mais bancos de dados, esquemas ou tabelas para Identifiers (Identificadores), separados por espaços.

      Use o formato a seguir:

      database[.schema][.table] database2[.schema2][.table2] ... databasen[.scheman][.tablen]

      Por exemplo:

      mydatabase mydatabase2.myschema1 mydatabase2.myschema2.mytable1 mydatabase2.myschema2.mytable2
  8. Em S3 bucket (Bucket do S3), escolha o bucket para o qual exportar.

    Para atribuir os dados exportados a um caminho de pasta no bucket do S3, insira o caminho opcional para o S3 prefix (Prefixo do S3).

  9. Em IAM role (Perfil do IAM), escolha um perfil que conceda a você acesso de gravação ao bucket do S3 escolhido ou crie um novo perfil.

    • Se você criou um perfil seguindo as etapas em Fornecer acesso a um bucket do Amazon S3 usando um perfil do IAM, escolha esse perfil.

    • Se você não criou um perfil que conceda acesso de gravação ao bucket do S3 escolhido, selecione Create a new role (Criar um perfil) para criar o perfil automaticamente. Depois, insira um nome para o perfil em Nome do perfil do IAM.

  10. Em AWS KMS key, insira o ARN da chave a ser usada para criptografar os dados exportados.

  11. Escolha Export to Amazon S3 (Exportar para o Amazon S3).

Para exportar um snapshot de banco de dados para o Amazon S3 usando a AWS CLI, use o comando start-export-task com as seguintes opções necessárias:

  • --export-task-identifier

  • --source-arn

  • --s3-bucket-name

  • --iam-role-arn

  • --kms-key-id

Nos exemplos a seguir, a tarefa de exportação do snapshot é denominada my_snapshot_export, que exporta um snapshot para um bucket do S3 chamado amzn-s3-demo-destination-bucket.

Para Linux, macOS ou Unix:

aws rds start-export-task \ --export-task-identifier my-snapshot-export \ --source-arn arn:aws:rds:AWS_Region:123456789012:snapshot:snapshot-name \ --s3-bucket-name amzn-s3-demo-destination-bucket \ --iam-role-arn iam-role \ --kms-key-id my-key

Para Windows:

aws rds start-export-task ^ --export-task-identifier my-snapshot-export ^ --source-arn arn:aws:rds:AWS_Region:123456789012:snapshot:snapshot-name ^ --s3-bucket-name amzn-s3-demo-destination-bucket ^ --iam-role-arn iam-role ^ --kms-key-id my-key

Segue um exemplo de saída.

{ "Status": "STARTING", "IamRoleArn": "iam-role", "ExportTime": "2019-08-12T01:23:53.109Z", "S3Bucket": "amzn-s3-demo-destination-bucket", "PercentProgress": 0, "KmsKeyId": "my-key", "ExportTaskIdentifier": "my-snapshot-export", "TotalExtractedDataInGB": 0, "TaskStartTime": "2019-11-13T19:46:00.173Z", "SourceArn": "arn:aws:rds:AWS_Region:123456789012:snapshot:snapshot-name" }

Para fornecer um caminho de pasta no bucket do S3 para a exportação do snapshot, inclua a opção --s3-prefix no comando start-export-task.

Para exportar um snapshot de banco de dados para o Amazon S3, usando a API do Amazon RDS, use a operação StartExportTask com os seguintes parâmetros necessários:

  • ExportTaskIdentifier

  • SourceArn

  • S3BucketName

  • IamRoleArn

  • KmsKeyId