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á.
É possível migrar dados de um banco de dados SAP Adaptive Server Enterprise (ASE), conhecido anteriormente como Sybase, utilizando o AWS DMS. Com o banco de dados SAP ASE como origem, é possível migrar dados para qualquer um dos outros bancos de dados de destino compatíveis com o AWS DMS.
Para obter informações sobre as versões do SAP ASE compatíveis com o AWS DMS como origem, consulte Fontes para AWS DMS.
Para obter mais detalhes sobre a utilização dos bancos de dados SAP ASE e AWS DMS, consulte as seguintes seções.
Tópicos
- Pré-requisitos para a utilização de um banco de dados SAP ASE como origem do AWS DMS
- Limitações de uso do SAP ASE como origem do AWS DMS
- Permissões necessárias para utilizar o SAP ASE como origem do AWS DMS
- Remover o ponto de truncamento
- Configurações de endpoint ao utilizar o SAP ASE como origem para o AWS DMS
- Tipos de dados de origem do SAP ASE
Pré-requisitos para a utilização de um banco de dados SAP ASE como origem do AWS DMS
Para que um banco de dados SAP ASE ser uma origem do AWS DMS, faça o seguinte:
-
Ative a replicação do SAP ASE para tabelas utilizando o comando
sp_setreptable
. Para obter mais informações, consulte Sybase Infocenter Archive. -
Desabilite
RepAgent
no banco de dados SAP ASE. Para obter mais informações, consulte Interromper e desativar o thread RepAgent no banco de dados primário. -
Para replicar para o SAP ASE versão 15.7 em uma instância do Windows EC2 configurado para caracteres não latinos (por exemplo, chinês), instale o SAP ASE 15.7 SP121 no computador de destino.
nota
Para a replicação de captura de dados de alteração (CDC), o DMS executa dbcc
logtransfer
e dbcc log
para ler os dados do log de transações.
Limitações de uso do SAP ASE como origem do AWS DMS
As seguintes limitações se aplicam quando um banco de dados SAP ASE é utilizado como origem do AWS DMS:
-
É possível executar somente uma tarefa do AWS DMS com replicação contínua ou CDC para cada banco de dados SAP ASE. É possível executar várias tarefas somente de carga máxima em paralelo.
-
Não é possível renomear uma tabela. Por exemplo, o comando a seguir falha.
sp_rename 'Sales.SalesRegion', 'SalesReg;
-
Não é possível renomear uma coluna. Por exemplo, o comando a seguir falha.
sp_rename 'Sales.Sales.Region', 'RegID', 'COLUMN';
-
Os valores zero presentes no final de strings de tipos de dados binários são truncados quando replicados para o banco de dados de destino. Por exemplo,
0x0000000000000000000000000100000100000000
na tabela de origem torna-se0x00000000000000000000000001000001
na tabela de destino. -
O AWS DMS cria a tabela de destino com colunas que não permitem valores NULL, caso o padrão no banco de dados esteja definido para não permitir valores NULL. Portanto, se uma tarefa de replicação de carga máxima ou CDC contiver valores vazios, o AWS DMS lançará um erro. É possível evitar esses erros permitindo valores NULL no banco de dados de origem com os seguintes comandos.
sp_dboption
database_name
, 'allow nulls by default', 'true' go usedatabase_name
CHECKPOINT go -
O comando de índice
reorg rebuild
não é compatível. -
O AWS DMS não é compatível com clusters nem utiliza MSA (Multi-Site Availability)/Warm Standby como origem.
-
Quando a expressão do cabeçalho de transformação
AR_H_TIMESTAMP
é utilizada em regras de mapeamento, os milissegundos não serão capturados para uma coluna adicionada. -
A execução de operações de mesclagem durante a CDC resultará em um erro não recuperável. Para sincronizar o destino novamente, execute uma carga máxima.
-
Os eventos de acionador de reversão não são compatíveis com tabelas que utilizam um esquema de bloqueio de linhas de dados.
-
O AWS DMS não pode retomar uma tarefa de replicação depois de eliminar uma tabela dentro do escopo da tarefa de um banco de dados SAP de origem. Se a tarefa de replicação do DMS foi interrompida e executou qualquer operação DML (INSERT, UPDATE, DELETE) seguida pelo descarte da tabela, reinicie a tarefa de replicação.
Permissões necessárias para utilizar o SAP ASE como origem do AWS DMS
Para utilizar um banco de dados SAP ASE como origem em uma tarefa do AWS DMS, é necessário conceder permissões. Conceda à conta de usuário especificada nas definições do banco de dados do AWS DMS as seguintes permissões no banco de dados SAP ASE:
-
sa_role
-
replication_role
-
sybase_ts_role
-
Por padrão, quando uma permissão é necessária para executar o procedimento armazenado
sp_setreptable
, o AWS DMS ativa a opção de replicação do SAP ASE. Se você quiser executarsp_setreptable
em uma tabela diretamente no endpoint do banco de dados e não por meio do próprio AWS DMS, é possível utilizar o atributo de conexão adicional doenableReplication
. Para ter mais informações, consulte Configurações de endpoint ao utilizar o SAP ASE como origem para o AWS DMS.
Remover o ponto de truncamento
Ao iniciar uma tarefa, o AWS DMS cria uma entrada $replication_truncation_point
na exibição do sistema syslogshold
, indicando que o processo de replicação está em andamento. Enquanto o AWS DMS está trabalhando, ele avança o ponto de truncamento de replicação em intervalos regulares, de acordo com o volume dos dados que já foram copiados para o destino.
Assim que a entrada $replication_truncation_point
for criada, mantenha a tarefa do AWS DMS em execução para evitar que o log do banco de dados cresça excessivamente. Se quiser parar permanentemente a tarefa do AWS DMS, remova o ponto de truncamento de replicação com o seguinte comando:
dbcc settrunc('ltm','ignore')
Depois que o ponto de truncamento for removido, não será possível retomar a tarefa do AWS DMS. O log continuará a ser automaticamente truncado nos pontos de verificação (se o truncamento automático for definido).
Configurações de endpoint ao utilizar o SAP ASE como origem para o AWS DMS
É possível utilizar as configurações de endpoint para configurar o banco de dados de origem do SAP ASE de maneira semelhante à utilização de atributos de conexão adicional. Você especifica as configurações ao criar o endpoint de origem utilizando o console do AWS DMS ou o comando create-endpoint
na AWS CLI, com a sintaxe --sybase-settings '{"
do JSON.EndpointSetting"
:
"value"
, ...
}'
A tabela a seguir mostra as configurações de endpoint que é possível utilizar com o SAP ASE como origem.
Nome | Descrição |
---|---|
Charset |
Defina esse atributo para o nome do SAP ASE que corresponde ao conjunto de caracteres internacional. Valor padrão: Exemplo: Valores válidos:
Em caso de outras dúvidas sobre os conjuntos de caracteres compatíveis em um banco de dados SAP ASE, consulte Adaptive Server Enterprise: conjuntos de caracteres compatíveis |
EnableReplication |
Defina esse atributo se quiser ativar Valor padrão: Valores válidos: Exemplo: |
EncryptPassword |
Defina esse atributo se você tiver ativado Valor padrão: Valores válidos: Exemplo: Para obter mais informações sobre esses valores de parâmetros, consulte Adaptive Server Enterprise: utilizando a propriedade da string de conexão EncryptPassword |
Provider |
Defina esse atributo se quiser utilizar o Transport Layer Security (TLS) 1.2 para versões do ASE 15.7 e superiores. Observe que a AWS requer o TLS versão 1.2 ou posterior e recomenda a versão 1.3. Valor padrão: Valores válidos: Exemplo: |
Tipos de dados de origem do SAP ASE
Para obter uma lista dos tipos de dados de origem do SAP ASE compatíveis ao utilizar o AWS DMS e o mapeamento padrão dos tipos de dados do AWS DMS, consulte a tabela a seguir. O AWS DMS não é compatível com tabelas de origem do SAP ASE com colunas do tipo de dados tipos definidos pelo usuário (UDT). Colunas replicadas com esse tipo de dados são criadas como NULL.
Para obter informações sobre como exibir o tipo de dados mapeado no destino, consulte a seção Destinos para a migração de dados relativa ao seu endpoint de destino.
Para obter mais informações sobre os tipos de dados do AWS DMS, consulte Tipos de dados do AWS Database Migration Service.
Tipos de dados do SAP ASE |
Tipos de dados do AWS DMS |
---|---|
BIGINT |
INT8 |
UNSIGNED BIGINT |
UINT8 |
INT |
INT4 |
UNSIGNED INT |
UINT4 |
SMALLINT |
INT2 |
UNSIGNED SMALLINT |
UINT2 |
TINYINT |
UINT1 |
DECIMAL |
NUMERIC |
NUMERIC |
NUMERIC |
FLOAT |
REAL8 |
DOUBLE |
REAL8 |
REAL |
REAL4 |
MONEY |
NUMERIC |
SMALLMONEY |
NUMERIC |
DATETIME |
DATETIME |
BIGDATETIME |
DATETIME(6) |
SMALLDATETIME |
DATETIME |
DATA |
DATA |
TIME |
TIME |
BIGTIME |
TIME |
CHAR |
STRING |
UNICHAR |
WSTRING |
NCHAR |
WSTRING |
VARCHAR |
STRING |
UNIVARCHAR |
WSTRING |
NVARCHAR |
WSTRING |
BINARY |
BYTES |
VARBINARY |
BYTES |
BIT |
BOOLEAN |
TEXT |
CLOB |
UNITEXT |
NCLOB |
IMAGE |
BLOB |