

# Limitações e problemas conhecidos do Amazon RDS para Db2
<a name="db2-known-issues-limitations"></a>

Os seguintes itens são limitações e problemas conhecidos no trabalho com o Amazon RDS para Db2:

**Topics**
+ [Limitação de autenticação](#db2-known-issues-limitations-authentication-limit)
+ [Rotinas não protegidas](#db2-known-issues-limitations-non-fenced-routines)
+ [Espaços de tabela de armazenamento não automáticos durante a migração](#db2-known-issues-limitations-non-automatic-storage-tablespaces)
+ [Configuração do parâmetro db2\$1compatibility\$1vector](#db2-known-issues-limitations-db2-compatibility-vector)
+ [Migrar bancos de dados que contêm pacotes INVALID](#db2-known-issues-limitations-invalid-packages-migrating)

## Limitação de autenticação
<a name="db2-known-issues-limitations-authentication-limit"></a>

O Amazon RDS define `db2auth` como `JCC_ENFORCE_SECMEC` por padrão. No entanto, se você não quiser aplicar a criptografia de ID de usuário e senha pela rede, substitua essa configuração alterando o parâmetro `db2auth` para `CLEAR_TEXT` no grupo de parâmetros. Para obter mais informações, consulte [Modificar parâmetros em um grupo de parâmetros de banco de dados no Amazon RDS](USER_WorkingWithParamGroups.Modifying.md).

## Rotinas não protegidas
<a name="db2-known-issues-limitations-non-fenced-routines"></a>

O RDS para Db2 não comporta a criação de rotinas não protegidas e a migração delas por meio do backup e da restauração de dados. Para conferir se o banco de dados contém alguma rotina não protegida, execute o seguinte comando SQL:

```
SELECT 'COUNT:' || count(*) FROM SYSCAT.ROUTINES where fenced='N' and routineschema not in ('SQLJ','SYSCAT','SYSFUN','SYSIBM','SYSIBMADM','SYSPROC','SYSTOOLS')
```

## Espaços de tabela de armazenamento não automáticos durante a migração
<a name="db2-known-issues-limitations-non-automatic-storage-tablespaces"></a>

O RDS para Db2 não permite a criação de espaços de tabela de armazenamento não automáticos. Quando você usa a restauração nativa para uma migração única do banco de dados, o RDS para Db2 converte automaticamente os espaços de tabela de armazenamento não automáticos em espaços automáticos e, depois, restaura o banco de dados para o RDS para Db2. Para ter informações sobre migrações únicas, consulte [Migrar do Linux para Linux para o Amazon RDS para Db2](db2-one-time-migration-linux.md) e [Migrar do AIX ou do Windows para Linux para o Amazon RDS para Db2](db2-one-time-migration-aix-windows-linux.md).

## Configuração do parâmetro db2\$1compatibility\$1vector
<a name="db2-known-issues-limitations-db2-compatibility-vector"></a>

Com o Amazon RDS, você pode criar um banco de dados inicial ao criar a instância de banco de dados e, depois, modificar os parâmetros em um grupo de parâmetros associado. No entanto, para o Db2, se você quiser definir o parâmetro `db2_compatibility_vector` em um grupo de parâmetros, primeiro modifique o parâmetro em um grupo de parâmetros personalizado, crie a instância de banco de dados sem um banco de dados e, em seguida, crie um banco de dados usando o procedimento armazenado `rdsadmin.create_database`.

**Como definir o parâmetro `db2_compatibility_vector`**

1. [Crie um grupo de parâmetros personalizado](USER_WorkingWithParamGroups.Creating.md). (Não é possível modificar parâmetros em grupos padrão.)

1. [Modifique o parâmetro](USER_WorkingWithParamGroups.Modifying.md).

1. [Crie uma instância de banco de dados](USER_CreateDBInstance.md).

1. [Crie um banco de dados](db2-managing-databases.md#db2-creating-database) usando o procedimento armazenado `rdsadmin.create_database`.

1. [Associe o grupo de parâmetros](USER_WorkingWithParamGroups.Associating.md) à instância de banco de dados que contém o banco de dados. 

## Migrar bancos de dados que contêm pacotes INVALID
<a name="db2-known-issues-limitations-invalid-packages-migrating"></a>

Se migrar bancos de dados do Db2 que contêm pacotes `INVALID` para o RDS para Db2 usando o comando `RESTORE`, você poderá encontrar problemas ao começar a usar os bancos de dados. Pacotes `INVALID` podem causar problemas devido à configuração de autorização para o usuário da instância de banco de dados `rdsdb` e à remoção da autorização de `PUBLIC`. Pacotes `INVALID` fazem com que os seguintes comandos falhem:
+ `db2updv115`
+ `db2 "call SYSPROC.ADMIN_REVALIDATE_DB_OBJECTS()"`

Antes de migrar o banco de dados com o comando `RESTORE`, certifique-se de que ele não contenha pacotes `INVALID` executando o seguinte comando:

```
db2 "SELECT 'COUNT:' || count(*) FROM SYSCAT.INVALIDOBJECTS"
```

Se o comando retornar uma contagem maior que zero, chame o seguinte comando:

```
db2 "call SYSPROC.ADMIN_REVALIDATE_DB_OBJECTS()"
```

Depois, chame o comando anterior para confirmar que o banco de dados não contém mais pacotes `INVALID`.

```
db2 "SELECT 'COUNT:' || count(*) FROM SYSCAT.INVALIDOBJECTS"
```

Agora está tudo pronto para fazer backup do banco de dados e restaurá-lo na instância de banco de dados do RDS para Db2.