As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
Você pode migrar dados de um banco de dados IBM Db2 para Linux, Unix, Windows e Amazon RDS (Db2 LUW) para qualquer banco de dados de destino compatível usando (). AWS Database Migration Service AWS DMS
Para obter informações sobre as versões do Db2 no Linux, Unix, Windows e RDS que oferecem AWS DMS suporte como fonte, consulte. Fontes para AWS DMS
É possível utilizar SSL para criptografar conexões entre o endpoint do Db2 LUW e a instância de replicação. Para obter mais informações sobre a utilização de SSL com um endpoint do Db2 LUW, consulte Usando SSL com AWS Database Migration Service.
Pré-requisitos ao usar o Db2 LUW como fonte para AWS DMS
Os pré-requisitos a seguir são necessários antes de utilizar um banco de dados Db2 LUW como origem.
Para habilitar a replicação contínua, também chamada de captura de dados de alteração (CDC), faça o seguinte:
-
Defina o banco de dados para ser recuperável, o que AWS DMS requer a captura de alterações. Um banco de dados será recuperável se um ou os dois parâmetros de configuração de banco de dados
LOGARCHMETH1
eLOGARCHMETH2
estiverem definidos comoON
.Se seu banco de dados for recuperável, AWS DMS poderá acessar o Db2,
ARCHIVE LOG
se necessário. -
Certifique-se de que os registros de DB2 transações estejam disponíveis, com um período de retenção suficiente para serem processados AWS DMS.
-
DB2 requer
DBADM
autorizaçãoSYSADM
para extrair registros do registro de transações. Conceda à conta do usuário as seguintes permissões:SYSADM
ouDBADM
DATAACCESS
nota
Para tarefas somente de carga máxima, a conta de usuário do DMS precisa da permissão DATAACCESS.
-
Ao usar o IBM DB2 for LUW versão 9.7 como fonte, defina o atributo de conexão extra (ECA), da seguinte
CurrentLSN
forma:CurrentLSN=
em queLSN
especifica um número de sequência de log (LSN) em que você deseja que a replicação seja iniciada. Ou,LSN
CurrentLSN=
.scan
-
Ao usar o Amazon RDS for Db2 LUW como fonte, certifique-se de que os registros de arquivamento estejam disponíveis para o. AWS DMS Como os bancos AWS de dados DB2 gerenciados eliminam os registros de arquivamento o mais rápido possível, você deve aumentar o tempo em que os registros permanecem disponíveis. Por exemplo, para aumentar a retenção de log para 24 horas, execute o comando a seguir:
db2 "call rdsadmin.set_archive_log_retention( ?, 'TESTDB', '24')"
Para ter mais informações sobre os procedimentos do Amazon RDS para Db2 LUW, consulte Referência de procedimentos armazenados do Amazon RDS para Db2 no Guia do usuário do Amazon Relational Database Service.
Limitações ao usar o Db2 LUW como fonte para AWS DMS
AWS DMS não oferece suporte a bancos de dados em cluster. No entanto, é possível definir um Db2 LUW separado para cada um dos endpoints de um cluster. Por exemplo, é possível criar uma tarefa de migração de carga máxima com qualquer um dos nós no cluster e criar tarefas separadas em cada nó.
AWS DMS não suporta o tipo de BOOLEAN
dados em seu banco de dados Db2 LUW de origem.
Ao utilizar a replicação contínua (CDC), aplicam-se as seguintes limitações:
-
Quando uma tabela com várias partições é truncada, o número de eventos DDL mostrados no AWS DMS console é igual ao número de partições. Isso ocorre porque o Db2 LUW registra um DDL separado para cada partição.
-
As ações de DDL a seguir não são compatíveis em tabelas particionadas:
-
ALTER TABLE ADD PARTITION
-
ALTER TABLE DETACH PARTITION
-
ALTER TABLE ATTACH PARTITION
-
-
AWS DMS não suporta uma migração contínua de replicação de uma instância em espera de recuperação de desastres de DB2 alta disponibilidade (HADR). O modo de espera é inacessível.
-
O tipo de dados DECFLOAT não é compatível. Consequentemente, alterações nas colunas DECFLOAT são ignoradas durante a replicação contínua.
-
A instrução RENAME COLUMN não é compatível.
-
Ao realizar atualizações nas tabelas de agrupamento multidimensional (MDC), cada atualização é mostrada no AWS DMS console como INSERT + DELETE.
-
Quando a configuração da tarefa Incluir colunas LOB na replicação não está ativada, qualquer tabela que tenha com colunas LOB é suspensa durante a replicação contínua.
-
Para as versões 10.5 e superiores do Db2 LUW, as colunas de string de comprimento variável com dados armazenados são ignoradas. out-of-row Essa limitação se aplica somente a tabelas criadas com tamanho de linha estendido para colunas com tipos de dados, como VARCHAR e VARGRAPHIC. Para contornar essa limitação, mova a tabela para um espaço de tabela com um tamanho de página maior. Para obter mais informações, consulte O que posso fazer se eu quiser alterar o tamanho da página dos espaços de DB2 tabela
. -
Para a replicação contínua, o DMS não oferece suporte à migração de dados carregados no nível da página pelo utilitário LOAD. DB2 Em vez disso, utilize o utilitário IMPORT que utiliza inserções SQL. Para obter mais informações, consulte diferenças entre os utilitários de importação e de carregamento
. -
Enquanto uma tarefa de replicação está em execução, o DMS captura CREATE TABLE DDLs somente se as tabelas tiverem sido criadas com o atributo DATA CAPTURE CHANGE.
-
O DMS apresenta as seguintes limitações ao usar o Db2 Database Partition Feature (DPF):
O DMS não pode coordenar transações entre nós do Db2 em um ambiente do DPF. Isso se deve às restrições na interface da API IBM DB2 READLOG. No DPF, as transações podem abranger vários nós do Db2, dependendo de como DB2 particiona os dados. Como resultado, sua solução DMS deve capturar transações de cada nó do Db2 de forma independente.
O DMS pode capturar transações locais de cada nó do Db2 no cluster do DPF configurando
connectNode
como1
em vários endpoints de origem do DMS. Essa configuração corresponde aos números de nós lógicos definidos no arquivo de configuração do DB2 servidordb2nodes.cfg
.As transações locais em nós individuais do Db2 podem ser partes de uma transação global maior. O DMS aplica cada transação local de forma independente no destino, sem coordenação com transações em outros nós do Db2. Esse processamento independente pode levar a complicações, em especial quando as linhas são movidas entre as partições.
Quando o DMS faz replicações de vários nós do Db2, não há garantia da ordem correta das operações no destino, pois o DMS aplica as operações de forma independente para cada nó do Db2. Você deve garantir que a captura de transações locais de forma independente de cada nó do Db2 funcione para seu caso de uso específico.
Ao migrar de um ambiente do DPF, recomendamos primeiro executar uma tarefa de carga máxima sem eventos em cache e, em seguida, executar tarefas somente de CDC. Recomendamos executar uma tarefa por nó do Db2, começando pelo carimbo de data/hora de início da carga máxima ou pelo LRI (identificador de registro de log) definido usando a configuração
StartFromContext
do endpoint. Para ter informações sobre como determinar o ponto de partida da replicação, consulte Finding the LSN or LRI value for replication startna documentação de suporte do IBM.
-
Para replicação contínua (CDC), se você planejar iniciar a replicação a partir de um timestamp específico, defina o atributo de conexão
StartFromContext
com o timestamp requerido. -
Atualmente, o DMS não oferece suporte ao Db2 pureScale Feature, uma extensão do DB2 LUW que você pode usar para escalar sua solução de banco de dados.
-
A opção
DATA CAPTURE CHANGES
de tabela é um pré-requisito crucial para os processos de replicação DB2 de dados. Deixar de ativar essa opção ao criar tabelas pode causar a perda de dados, especialmente para tarefas de replicação somente do CDC (Change Data Capture) iniciadas a partir de um ponto de partida anterior. AWS DMS habilitará esse atributo por padrão ao reiniciar uma tarefa CDC ou FULL+CDC. No entanto, qualquer alteração feita no banco de dados de origem antes da reinicialização da tarefa pode passar despercebida.ALTER TABLE TABLE_SCHEMA.TABLE_NAME DATA CAPTURE CHANGES INCLUDE LONGVAR COLUMNS;
Configurações de endpoint ao usar o Db2 LUW como fonte para AWS DMS
É possível utilizar as configurações de endpoint para configurar o banco de dados de destino do Db2 LUW de forma semelhante à utilização de atributos de conexão adicional. Você especifica as configurações ao criar o endpoint de origem usando o AWS DMS console ou usando o create-endpoint
comando no AWS CLI, com a sintaxe --ibm-db2-settings '{"
JSON.EndpointSetting"
:
"value"
, ...
}'
A tabela a seguir mostra as configurações de endpoint que é possível utilizar com o Db2 LUW como origem.
Nome | Descrição |
---|---|
|
Para replicação contínua (CDC), utilize |
|
Número máximo de bytes por leitura, como um valor NUMBER. O padrão é 64 KB. |
|
Habilita a replicação contínua (CDC) como um valor BOOLEAN. O padrão é true. |
|
Para replicação contínua (CDC), utilize
Para determinar o intervalo de LRI/LSN de um arquivo de log, execute o comando
O resultado desse exemplo é semelhante ao exemplo a seguir.
Nessa saída, o arquivo de log é S0000002.LOG e o valor do StartFromContextLRI são os 34 bytes no final do intervalo.
|
|
Atributo de conexão extra que define o tempo limite da instrução (consulta) para o endpoint DB2 LUW, em segundos. O valor padrão é de 60 segundos. Exemplo de ECA: |
Tipos de dados de origem para IBM Db2 LUW
A migração de dados que usa o Db2 LUW como fonte para AWS DMS suportar a maioria dos tipos de dados do Db2 LUW. A tabela a seguir mostra os tipos de dados de origem do Db2 LUW que são suportados durante o uso AWS DMS e o mapeamento padrão dos tipos de AWS DMS dados. Para obter mais informações sobre os tipos de dados do Db2 LUW, consulte a documentação do Db2 LUW
Para obter informações sobre como visualizar o tipo de dados mapeado no destino, consulte a seção relativa ao endpoint de destino que você está usando.
Para obter informações adicionais sobre tipos de AWS DMS dados, consulteTipos de dados para AWS Database Migration Service.
Tipos de dados do Db2 LUW |
AWS DMS tipos de dados |
---|---|
INTEGER |
INT4 |
SMALLINT |
INT2 |
BIGINT |
INT8 |
DECIMAL (p,s) |
NUMERIC (p,s) |
FLOAT |
REAL8 |
DOUBLE |
REAL8 |
REAL |
REAL4 |
DECFLOAT (p) |
Se a precisão for 16, então REAL8; se a precisão for 34, então STRING |
GRAPHIC (n) |
WSTRING, para strings de gráficos de comprimento fixo de caracteres de byte duplo com um comprimento maior que 0 e menor ou igual a 127 |
VARGRAPHIC (n) |
WSTRING, para strings de gráficos de comprimento variável com um comprimento maior que 0 e menor ou igual a 16.352 caracteres de byte duplo. |
LONG VARGRAPHIC (n) |
CLOB, para strings de gráficos de comprimento variável com um comprimento maior que 0 e menor ou igual a 16.352 caracteres de byte duplo. |
CHARACTER (n) |
STRING, para strings de comprimento fixo de caracteres de byte duplo com um comprimento maior que 0 e menor ou igual a 255 |
VARCHAR (n) |
STRING, para strings de comprimento variável de caracteres de byte duplo com um comprimento maior que 0 e menor ou igual a 32.704 |
LONG VARCHAR (n) |
CLOB, para strings de comprimento variável de caracteres de byte duplo com um comprimento maior que 0 e menor ou igual a 32.704 |
CHAR (n) FOR BIT DATA |
BYTES |
VARCHAR (n) FOR BIT DATA |
BYTES |
LONG VARCHAR FOR BIT DATA |
BYTES |
DATE |
DATE |
TIME |
TIME |
TIMESTAMP |
DATETIME |
BLOB (n) |
BLOB O comprimento máximo é 2.147.483.647 bytes |
CLOB (n) |
CLOB O comprimento máximo é 2.147.483.647 bytes |
DBCLOB (n) |
CLOB O comprimento máximo é 1.073.741.824 caracteres de byte duplo |
XML |
CLOB |