

# Migrar do Linux para Linux para o Amazon RDS para Db2
<a name="db2-one-time-migration-linux"></a>

Com essa abordagem de migração, é feito backup do banco de dados do Db2 autogerenciado em um bucket do Amazon S3. Depois, use os procedimentos armazenados do Amazon RDS para restaurar o banco de dados do Db2 em uma instância de banco de dados do Amazon RDS para Db2. Para ter mais informações sobre como usar o Amazon S3, consulte [Integrar uma instância de banco de dados do Amazon RDS para Db2 ao Amazon S3](db2-s3-integration.md).

O backup e a restauração do RDS para Db2 seguem os caminhos e as restrições de atualização compatíveis do IBM Db2. Para ter mais informações, consulte [Supported upgrade paths for Db2 servers](https://www.ibm.com/docs/en/db2/11.5?topic=servers-supported-upgrade-paths-db2) e [Upgrade restrictions for Db2 servers](https://www.ibm.com/docs/en/db2/11.5?topic=servers-upgrade-restrictions) na documentação do IBM Db2.

**Topics**
+ [Limitações e recomendações para usar a restauração nativa](#db2-linux-migration-limitations)
+ [Fazer backup do banco de dados no Amazon S3](#db2-linux-backing-up-database)
+ [Criar um grupo de armazenamento automático padrão](#db2-linux-creating-auto-storage-group)
+ [Restaurar o bancos de dados do Db2](#db2-linux-restoring-db2-database)

## Limitações e recomendações para usar a restauração nativa
<a name="db2-linux-migration-limitations"></a>

As seguintes limitações e recomendações se aplicam ao uso da restauração nativa: 
+ O Amazon RDS só comporta a migração de versões on-premises do Db2 que correspondam às versões compatíveis do RDS para Db2. Para ter mais informações sobre as versões compatíveis, consulte [Gerenciamento de atualizações para instâncias Db2 do Amazon RDS](Db2.Concepts.VersionMgmt.Supported.md).
+ O Amazon RDS só permite backups off-line e on-line para restauração nativa. O Amazon RDS não permite incrementos ou backups Delta.
+ Não é possível restaurar de um bucket do Amazon S3 em uma Região da AWS diferente da região onde a instância de banco de dados do RDS para Db2 está localizada. 
+ O Amazon S3 limita o tamanho dos arquivos carregados para um bucket do Amazon S3 a 5 TB. Se um arquivo de backup de banco de dados exceder 5 TB, divida o arquivo de backup em arquivos menores.
+ O Amazon RDS não comporta rotinas externas não protegidas, restaurações incrementais nem restaurações Delta.
+ Não é possível restaurar de um banco de dados de origem criptografado, mas você pode restaurar para uma instância de banco de dados do Amazon RDS.

O processo de restauração varia de acordo com sua configuração.

Se você definir `USE_STREAMING_RESTORE` como `TRUE`, o Amazon RDS transmitirá diretamente seu backup do bucket do S3 durante a restauração. O streaming reduz significativamente os requisitos de armazenamento. Você só precisa provisionar espaço de armazenamento igual ou superior ao tamanho do backup ou ao tamanho do banco de dados original, o que for maior.

Se você definir `USE_STREAMING_RESTORE` como `FALSE`, o Amazon RDS primeiro baixará o backup na instância de banco de dados do RDS para Db2 e, depois, o extrairá. A extração requer espaço de armazenamento adicional. É necessário provisionar espaço de armazenamento equivalente ou maior que a soma do tamanho do backup mais o tamanho do banco de dados original.

O tamanho máximo do banco de dados restaurado é igual ao tamanho máximo aceito do banco de dados menos o espaço necessário para armazenamento temporário durante o processo de restauração.

## Fazer backup do banco de dados no Amazon S3
<a name="db2-linux-backing-up-database"></a>

Para fazer backup do banco de dados no Amazon S3, são necessários os seguintes componentes da AWS:
+ *Um bucket do Amazon S3 para armazenar arquivos de backup*: faça upload de todos os arquivos de backup que você deseja migrar para o Amazon RDS. Recomendamos que você use backups off-line para migrações que possam lidar com o tempo de inatividade. Se você já tiver um bucket do Amazon S3, poderá usá-lo. Se você não tiver um bucket do S3, consulte [Criar um bucket](https://docs.aws.amazon.com/AmazonS3/latest/userguide/create-bucket-overview.html) no *Guia do usuário do Amazon S3*.
**nota**  
Se o banco de dados for grande e levar muito tempo para ser transferido para um bucket do S3, será possível solicitar um dispositivo AWS Snow Family e pedir para que a AWS realize o backup. Depois de copiar os arquivos para o dispositivo e devolvê-los à equipe da família Snow, a equipe vai transferir as imagens de backup para o bucket do S3. Para obter mais informações, consulte a [a documentação do AWS Snow Family](https://docs.aws.amazon.com/snowball/).
+ *Um perfil do IAM para acessar o bucket do S3*: se você já tem um perfil do IAM, pode usá-lo. Se não tiver um perfil, consulte [Etapa 2: Criar um perfil do IAM e associar a política do IAM](db2-s3-integration.md#db2-creating-iam-role). 
+ *Uma política do IAM com relações de confiança e permissões anexadas ao perfil do IAM*: consulte mais informações em [Etapa 1: criar uma política do IAM](db2-s3-integration.md#db2-creating-iam-policy).
+ *O perfil do IAM adicionado à instância de banco de dados do RDS para Db2*: consulte mais informações em [Etapa 3: Adicionar o perfil do IAM à instância de banco de dados do RDS para Db2](db2-s3-integration.md#db2-adding-iam-role).

## Criar um grupo de armazenamento automático padrão
<a name="db2-linux-creating-auto-storage-group"></a>

O banco de dados de origem deve ter um grupo de armazenamento automático padrão. Se o banco de dados não tiver um grupo de armazenamento automático padrão, você deverá criar um.

**Como criar um grupo de armazenamento automático padrão**

1. Conecte-se ao seu banco de dados de origem. No exemplo a seguir, substitua *source\$1database* pelo nome do banco de dados.

   ```
   db2 connect to source_database 
   ```

1. Crie um grupo de armazenamento automático e defina-o como padrão. No exemplo a seguir, substitua *storage\$1path* pelo caminho absoluto de onde o grupo de armazenamento está localizado.

   ```
   db2 "create stogroup IBMSTOGROUP ON storage_path set as default"
   ```

1. Encerre os processos de backend.

   ```
   db2 terminate
   ```

1. Desative o banco de dados e interrompa todos os serviços dele. No exemplo a seguir, substitua *source\$1database* pelo nome do banco de dados para o qual você criou o grupo de armazenamento.

   ```
   db2 deactivate db source_database
   ```

1. Faça backup do bancos de dados. No exemplo a seguir, substitua *source\$1database* pelo nome do banco de dados para o qual você criou o grupo de armazenamento. Substitua *file\$1system\$1path* pelo caminho absoluto para onde você deseja fazer backup do banco de dados.

   ```
   db2 backup database source_database to file_system_path 
   ```

## Restaurar o bancos de dados do Db2
<a name="db2-linux-restoring-db2-database"></a>

Depois de fazer backup do banco de dados no Amazon S3 e criar um grupo de armazenamento automático, estará tudo pronto para restaurar o banco de dados do Db2 para a instância de banco de dados do RDS para Db2.

**Como restaurar o banco de dados Db2 do bucket do Amazon S3 para sua instância de banco de dados do RDS para Db2**

1. Conecte-se à instância de banco de dados do RDS para Db2. Para obter mais informações, consulte [Conectar-se à instância de banco de dados do Db2](USER_ConnectToDb2DBInstance.md).

1. (Opcional) Para garantir que seu banco de dados esteja configurado da forma ideal, confira os valores dos seguintes parâmetros chamando [rdsadmin.show\$1configuration](db2-sp-managing-databases.md#db2-sp-show-configuration):
   + `RESTORE_DATABASE_NUM_BUFFERS`
   + `RESTORE_DATABASE_PARALLELISM`
   + `RESTORE_DATABASE_NUM_MULTI_PATHS`
   + `USE_STREAMING_RESTORE`

   Use [rdsadmin.set\$1configuration](db2-sp-managing-databases.md#db2-sp-set-configuration) para modificar esses valores conforme necessário. Definir adequadamente esses parâmetros pode melhorar significativamente a performance ao restaurar bancos de dados com grandes volumes de dados. Para a maioria dos cenários de migração, recomendamos definir `USE_STREAMING_RESTORE` como `TRUE` porque reduz os requisitos de armazenamento e pode aumentar a velocidade de restauração.

1. Restaure o banco de dados chamando `rdsadmin.restore_database`. Para obter mais informações, consulte [rdsadmin.restore\$1database](db2-sp-managing-databases.md#db2-sp-restore-database). 