Migre dados de um banco de dados Oracle autogerenciado para uma instância do AnalyticDB for PostgreSQL e crie um data warehouse em tempo real.
Pré-requisitos
O banco de dados Oracle autogerenciado deve ser da versão 9i, 10g, 11g, 12c, 18c ou 19c.
O banco de dados Oracle autogerenciado precisa operar no modo ARCHIVELOG com um período de retenção de logs de arquivamento adequado, e os logs arquivados devem estar acessíveis. Para mais informações, consulte ARCHIVELOG.
Ative o Supplemental Logging no banco de dados Oracle autogerenciado, incluindo
supplemental_log_data_pkesupplemental_log_data_ui. Para mais informações, consulte Supplemental Logging.Para criar a instância de destino do AnalyticDB for PostgreSQL, consulte Criar uma instância do AnalyticDB for PostgreSQL.
Faturamento
|
Tipo de migração |
Taxa de configuração da tarefa |
Taxa de tráfego pela Internet |
|
Migração de schema e migração completa de dados |
Gratuito. |
O DTS cobra uma taxa de tráfego pela Internet quando o Access Method do banco de dados de destino está definido como Public IP Address. Visão geral do faturamento. |
|
Migração incremental de dados |
Pago. Visão geral do faturamento. |
Observações
Durante a migração completa de dados, o DTS consome recursos de leitura e gravação dos bancos de dados de origem e de destino, o que pode aumentar a carga do banco de dados. Avalie o impacto no desempenho antes de iniciar a migração. Recomendamos migrar os dados em horários de baixa demanda.
Se uma tarefa de migração de dados falhar, o DTS a retomará automaticamente. Antes de transferir sua carga de trabalho para o banco de dados de destino, pare ou libere a tarefa para evitar que ela seja retomada automaticamente e sobrescreva dados no banco de dados de destino.
O DTS suporta apenas migração no nível de tabela. Tabelas otimizadas para anexação (AO) não podem ser usadas como tabelas de destino.
Ao usar mapeamento de colunas, se você não migrar todas as colunas ou se os schemas das tabelas forem diferentes, os dados das colunas que existem apenas na tabela de origem serão perdidos.
-
Caso o banco de dados Oracle autogerenciado esteja implantado em uma arquitetura Real Application Cluster (RAC) e conectado ao DTS por meio de uma virtual private cloud (VPC) da Alibaba Cloud, conecte o endereço IP do Single Client Access Name (SCAN) do Oracle RAC e o endereço IP virtual (VIP) de cada nó à VPC e configure as rotas. Essas configurações garantem que sua tarefa do DTS execute conforme o esperado. Para mais informações, consulte Conectar um data center ao DTS via VPN Gateway.
ImportanteAo configurar o banco de dados Oracle de origem no console do DTS, especifique o endereço IP SCAN do Oracle RAC como endpoint ou endereço IP do banco de dados.
Tipos de migração
|
Tipo |
Descrição |
|
Migração de schema |
O DTS migra os schemas dos objetos — incluindo tabelas, índices, restrições, funções, sequências e views — do banco de dados de origem para o banco de dados de destino. Aviso
|
|
Migração completa de dados |
O DTS migra todos os dados dos objetos selecionados da origem para o banco de dados de destino. Nota
Não execute operações DDL nos objetos a serem migrados até que a migração de schema e a migração completa de dados sejam concluídas. Caso contrário, a migração pode falhar. |
|
Migração incremental de dados |
Após a conclusão da migração completa de dados, o DTS consulta e captura logs de redo do banco de dados Oracle autogerenciado e migra as alterações incrementais de dados para o banco de dados de destino em tempo real. Durante a migração incremental de dados, o DTS suporta as seguintes instruções SQL:
A migração incremental de dados minimiza o tempo de inatividade durante a migração das suas aplicações autogerenciadas. |
Permissões da conta do banco de dados
|
Banco de dados |
Migração de schema |
Migração completa de dados |
Migração incremental de dados |
|
Banco de dados Oracle autogerenciado |
Permissões de proprietário do schema |
Permissões de proprietário do schema |
DBA |
|
AnalyticDB for PostgreSQL |
Permissões de leitura e gravação no banco de dados de destino |
Permissões de leitura e gravação no banco de dados de destino |
Permissões de leitura e gravação no banco de dados de destino |
Para saber como criar uma conta de banco de dados e conceder permissões, consulte:
Para um banco de dados Oracle autogerenciado, consulte CREATE USER e GRANT.
Para o AnalyticDB for PostgreSQL, consulte Configurar uma conta.
Se precisar realizar migração incremental de dados, mas não puder conceder permissões de DBA, conceda permissões mais granulares à conta do banco de dados.
Ativar logging e conceder permissões refinadas a uma conta de banco de dados Oracle
Se quiser migrar dados de um banco de dados Oracle, mas não for possível conceder a permissão de administrador de banco de dados (DBA) à conta, ative o archive logging e o supplemental logging e conceda permissões refinadas à conta.
-
Ative o archive logging e o supplemental logging.
Tipo
Procedimento
Archive logging
Execute as seguintes instruções para ativar o archive logging:
shutdown immediate; startup mount; alter database archivelog; alter database open; archive log list;Supplemental logging
Ative o supplemental logging no nível do banco de dados ou da tabela conforme seus requisitos de negócio:
NotaAtive o supplemental logging no nível do banco de dados para garantir a estabilidade das tarefas do Data Transmission Service (DTS). Ative o supplemental logging no nível da tabela para reduzir o uso de disco do banco de dados Oracle de origem.
-
Ativar supplemental logging no nível do banco de dados
-
Execute a seguinte instrução para ativar o supplemental logging mínimo:
alter database add supplemental log data; -
Execute a seguinte instrução para ativar o supplemental logging de chave primária e chave única no nível do banco de dados:
alter database add supplemental log data (primary key,unique index) columns;
-
-
Ativar supplemental logging no nível da tabela
-
Execute a seguinte instrução para ativar o supplemental logging mínimo:
alter database add supplemental log data; -
Ative o supplemental logging no nível da tabela usando um dos seguintes métodos:
-
Ativar supplemental logging de chave primária no nível da tabela
alter table table_name add supplemental log data (primary key) columns; -
Ativar supplemental logging no nível da tabela para todas as colunas
alter table tb_name add supplemental log data (all) columns;
-
-
Force logging
Execute as seguintes instruções para ativar o force logging:
alter database force logging; -
-
Conceda permissões refinadas a uma conta de banco de dados Oracle.
Oracle versões 9i a 11g
# Create a database account named rdsdt_dtsacct and grant permissions to the account. create user rdsdt_dtsacct IDENTIFIED BY rdsdt_dtsacct; grant create session to rdsdt_dtsacct; grant connect to rdsdt_dtsacct; grant resource to rdsdt_dtsacct; grant execute on sys.dbms_logmnr to rdsdt_dtsacct; grant select on V_$LOGMNR_LOGS to rdsdt_dtsacct; grant select on all_objects to rdsdt_dtsacct; grant select on all_tab_cols to rdsdt_dtsacct; grant select on dba_registry to rdsdt_dtsacct; grant select any table to rdsdt_dtsacct; grant select any transaction to rdsdt_dtsacct; -- v$log privileges grant select on v_$log to rdsdt_dtsacct; -- v$logfile privileges grant select on v_$logfile to rdsdt_dtsacct; -- v$archived_log privileges grant select on v_$archived_log to rdsdt_dtsacct; -- v$parameter privileges grant select on v_$parameter to rdsdt_dtsacct; -- v$database privileges grant select on v_$database to rdsdt_dtsacct; -- v$active_instances privileges grant select on v_$active_instances to rdsdt_dtsacct; -- v$instance privileges grant select on v_$instance to rdsdt_dtsacct; -- v$logmnr_contents privileges grant select on v_$logmnr_contents to rdsdt_dtsacct; -- system tables grant select on sys.USER$ to rdsdt_dtsacct; grant select on SYS.OBJ$ to rdsdt_dtsacct; grant select on SYS.COL$ to rdsdt_dtsacct; grant select on SYS.IND$ to rdsdt_dtsacct; grant select on SYS.ICOL$ to rdsdt_dtsacct; grant select on SYS.CDEF$ to rdsdt_dtsacct; grant select on SYS.CCOL$ to rdsdt_dtsacct; grant select on SYS.TABPART$ to rdsdt_dtsacct; grant select on SYS.TABSUBPART$ to rdsdt_dtsacct; grant select on SYS.TABCOMPART$ to rdsdt_dtsacct; grant select_catalog_role TO rdsdt_dtsacct;Oracle 12c a 19c (multitenant)
# Switch to the pluggable database (PDB). Create a database account named rdsdt_dtsacct and grant permissions to the account. ALTER SESSION SET container = ORCLPDB1; create user rdsdt_dtsacct IDENTIFIED BY rdsdt_dtsacct; grant create session to rdsdt_dtsacct; grant connect to rdsdt_dtsacct; grant resource to rdsdt_dtsacct; grant execute on sys.dbms_logmnr to rdsdt_dtsacct; grant select on all_objects to rdsdt_dtsacct; grant select on all_tab_cols to rdsdt_dtsacct; grant select on dba_registry to rdsdt_dtsacct; grant select any table to rdsdt_dtsacct; grant select any transaction to rdsdt_dtsacct; -- v$log privileges grant select on v_$log to rdsdt_dtsacct; -- v$logfile privileges grant select on v_$logfile to rdsdt_dtsacct; -- v$archived_log privileges grant select on v_$archived_log to rdsdt_dtsacct; -- v$parameter privileges grant select on v_$parameter to rdsdt_dtsacct; -- v$database privileges grant select on v_$database to rdsdt_dtsacct; -- v$active_instances privileges grant select on v_$active_instances to rdsdt_dtsacct; -- v$instance privileges grant select on v_$instance to rdsdt_dtsacct; -- v$logmnr_contents privileges grant select on v_$logmnr_contents to rdsdt_dtsacct; grant select on sys.USER$ to rdsdt_dtsacct; grant select on SYS.OBJ$ to rdsdt_dtsacct; grant select on SYS.COL$ to rdsdt_dtsacct; grant select on SYS.IND$ to rdsdt_dtsacct; grant select on SYS.ICOL$ to rdsdt_dtsacct; grant select on SYS.CDEF$ to rdsdt_dtsacct; grant select on SYS.CCOL$ to rdsdt_dtsacct; grant select on SYS.TABPART$ to rdsdt_dtsacct; grant select on SYS.TABSUBPART$ to rdsdt_dtsacct; grant select on SYS.TABCOMPART$ to rdsdt_dtsacct; -- V$PDBS privileges grant select on V_$PDBS to rdsdt_dtsacct; grant select on v$database to rdsdt_dtsacct; grant select on dba_objects to rdsdt_dtsacct; grant select on DBA_TAB_COMMENTS to rdsdt_dtsacct; grant select on dba_tab_cols to rdsdt_dtsacct; grant select_catalog_role TO rdsdt_dtsacct; # Switch to the CDB$ROOT, which is the root container of the container database (CDB). Create a database account and grant permissions to the account. ALTER SESSION SET container = CDB$ROOT; # Create a database account named rdsdt_dtsacct and grant permissions to the account. You must modify the default parameters of the Oracle database. alter session set "_ORACLE_SCRIPT"=true; create user rdsdt_dtsacct IDENTIFIED BY rdsdt_dtsacct; grant create session to rdsdt_dtsacct; grant connect to rdsdt_dtsacct; grant select on v_$logmnr_contents to rdsdt_dtsacct; grant LOGMINING TO rdsdt_dtsacct; grant EXECUTE_CATALOG_ROLE to rdsdt_dtsacct; grant execute on sys.dbms_logmnr to rdsdt_dtsacct;Oracle 12c a 19c (não multitenant)
# Create a database account named rdsdt_dtsacct and grant permissions to the account. create user rdsdt_dtsacct IDENTIFIED BY rdsdt_dtsacct; grant create session to rdsdt_dtsacct; grant connect to rdsdt_dtsacct; grant resource to rdsdt_dtsacct; grant select on V_$LOGMNR_LOGS to rdsdt_dtsacct; grant select on all_objects to rdsdt_dtsacct; grant select on all_tab_cols to rdsdt_dtsacct; grant select on dba_registry to rdsdt_dtsacct; grant select any table to rdsdt_dtsacct; grant select any transaction to rdsdt_dtsacct; grant select on v$database to rdsdt_dtsacct; grant select on dba_objects to rdsdt_dtsacct; grant select on DBA_TAB_COMMENTS to rdsdt_dtsacct; grant select on dba_tab_cols to rdsdt_dtsacct; -- v$log privileges grant select on v_$log to rdsdt_dtsacct; -- v$logfile privileges grant select on v_$logfile to rdsdt_dtsacct; -- v$archived_log privileges grant select on v_$archived_log to rdsdt_dtsacct; -- v$parameter privileges grant select on v_$parameter to rdsdt_dtsacct; -- v$database privileges grant select on v_$database to rdsdt_dtsacct; -- v$active_instances privileges grant select on v_$active_instances to rdsdt_dtsacct; -- v$instance privileges grant select on v_$instance to rdsdt_dtsacct; -- v$logmnr_contents privileges grant select on v_$logmnr_contents to rdsdt_dtsacct; grant select on sys.USER$ to rdsdt_dtsacct; grant select on SYS.OBJ$ to rdsdt_dtsacct; grant select on SYS.COL$ to rdsdt_dtsacct; grant select on SYS.IND$ to rdsdt_dtsacct; grant select on SYS.ICOL$ to rdsdt_dtsacct; grant select on SYS.CDEF$ to rdsdt_dtsacct; grant select on SYS.CCOL$ to rdsdt_dtsacct; grant select on SYS.TABPART$ to rdsdt_dtsacct; grant select on SYS.TABSUBPART$ to rdsdt_dtsacct; grant select on SYS.TABCOMPART$ to rdsdt_dtsacct; grant LOGMINING TO rdsdt_dtsacct; grant EXECUTE_CATALOG_ROLE to rdsdt_dtsacct; grant execute on sys.dbms_logmnr to rdsdt_dtsacct; grant select_catalog_role TO rdsdt_dtsacct;NotaPara mais informações sobre a arquitetura multitenant do Oracle, consulte Oracle Multitenant.
Logs do Oracle e permissões refinadas
Se precisar migrar dados incrementais sem permissões de DBA, ative o archive log e o supplemental log e conceda permissões refinadas à conta do banco de dados Oracle.
-
Ative o archive logging e o supplemental logging.
Tipo
Procedimento
Archive logging
Execute as seguintes instruções para ativar o archive logging:
shutdown immediate; startup mount; alter database archivelog; alter database open; archive log list;Supplemental logging
Ative o supplemental logging no nível do banco de dados ou da tabela conforme seus requisitos de negócio:
NotaAtive o supplemental logging no nível do banco de dados para garantir a estabilidade das tarefas do Data Transmission Service (DTS). Ative o supplemental logging no nível da tabela para reduzir o uso de disco do banco de dados Oracle de origem.
-
Ativar supplemental logging no nível do banco de dados
-
Execute a seguinte instrução para ativar o supplemental logging mínimo:
alter database add supplemental log data; -
Execute a seguinte instrução para ativar o supplemental logging de chave primária e chave única no nível do banco de dados:
alter database add supplemental log data (primary key,unique index) columns;
-
-
Ativar supplemental logging no nível da tabela
-
Execute a seguinte instrução para ativar o supplemental logging mínimo:
alter database add supplemental log data; -
Ative o supplemental logging no nível da tabela usando um dos seguintes métodos:
-
Ativar supplemental logging de chave primária no nível da tabela
alter table table_name add supplemental log data (primary key) columns; -
Ativar supplemental logging no nível da tabela para todas as colunas
alter table tb_name add supplemental log data (all) columns;
-
-
Force logging
Execute as seguintes instruções para ativar o force logging:
alter database force logging; -
-
Conceda permissões refinadas à conta do banco de dados Oracle.
Oracle 9i a 11g
# Create a database account (for example, rdsdt_dtsacct) and grant permissions. create user rdsdt_dtsacct IDENTIFIED BY rdsdt_dtsacct; grant create session to rdsdt_dtsacct; grant connect to rdsdt_dtsacct; grant resource to rdsdt_dtsacct; grant execute on sys.dbms_logmnr to rdsdt_dtsacct; grant select on V_$LOGMNR_LOGS to rdsdt_dtsacct; grant select on all_objects to rdsdt_dtsacct; grant select on all_tab_cols to rdsdt_dtsacct; grant select on dba_registry to rdsdt_dtsacct; grant select any table to rdsdt_dtsacct; grant select any transaction to rdsdt_dtsacct; -- v$log privileges grant select on v_$log to rdsdt_dtsacct; -- v$logfile privileges grant select on v_$logfile to rdsdt_dtsacct; -- v$archived_log privileges grant select on v_$archived_log to rdsdt_dtsacct; -- v$parameter privileges grant select on v_$parameter to rdsdt_dtsacct; -- v$database privileges grant select on v_$database to rdsdt_dtsacct; -- v$active_instances privileges grant select on v_$active_instances to rdsdt_dtsacct; -- v$instance privileges grant select on v_$instance to rdsdt_dtsacct; -- v$logmnr_contents privileges grant select on v_$logmnr_contents to rdsdt_dtsacct; -- system tables grant select on sys.USER$ to rdsdt_dtsacct; grant select on SYS.OBJ$ to rdsdt_dtsacct; grant select on SYS.COL$ to rdsdt_dtsacct; grant select on SYS.IND$ to rdsdt_dtsacct; grant select on SYS.ICOL$ to rdsdt_dtsacct; grant select on SYS.CDEF$ to rdsdt_dtsacct; grant select on SYS.CCOL$ to rdsdt_dtsacct; grant select on SYS.TABPART$ to rdsdt_dtsacct; grant select on SYS.TABSUBPART$ to rdsdt_dtsacct; grant select on SYS.TABCOMPART$ to rdsdt_dtsacct; grant select_catalog_role TO rdsdt_dtsacct;Oracle 12c a 19c (multitenant)
# Switch to the PDB, then create a database account (for example, rdsdt_dtsacct) and grant permissions. ALTER SESSION SET container = ORCLPDB1; create user rdsdt_dtsacct IDENTIFIED BY rdsdt_dtsacct; grant create session to rdsdt_dtsacct; grant connect to rdsdt_dtsacct; grant resource to rdsdt_dtsacct; grant execute on sys.dbms_logmnr to rdsdt_dtsacct; grant select on all_objects to rdsdt_dtsacct; grant select on all_tab_cols to rdsdt_dtsacct; grant select on dba_registry to rdsdt_dtsacct; grant select any table to rdsdt_dtsacct; grant select any transaction to rdsdt_dtsacct; -- v$log privileges grant select on v_$log to rdsdt_dtsacct; -- v$logfile privileges grant select on v_$logfile to rdsdt_dtsacct; -- v$archived_log privileges grant select on v_$archived_log to rdsdt_dtsacct; -- v$parameter privileges grant select on v_$parameter to rdsdt_dtsacct; -- v$database privileges grant select on v_$database to rdsdt_dtsacct; -- v$active_instances privileges grant select on v_$active_instances to rdsdt_dtsacct; -- v$instance privileges grant select on v_$instance to rdsdt_dtsacct; -- v$logmnr_contents privileges grant select on v_$logmnr_contents to rdsdt_dtsacct; grant select on sys.USER$ to rdsdt_dtsacct; grant select on SYS.OBJ$ to rdsdt_dtsacct; grant select on SYS.COL$ to rdsdt_dtsacct; grant select on SYS.IND$ to rdsdt_dtsacct; grant select on SYS.ICOL$ to rdsdt_dtsacct; grant select on SYS.CDEF$ to rdsdt_dtsacct; grant select on SYS.CCOL$ to rdsdt_dtsacct; grant select on SYS.TABPART$ to rdsdt_dtsacct; grant select on SYS.TABSUBPART$ to rdsdt_dtsacct; grant select on SYS.TABCOMPART$ to rdsdt_dtsacct; -- V$PDBS privileges grant select on V_$PDBS to rdsdt_dtsacct; grant select on dba_objects to rdsdt_dtsacct; grant select on DBA_TAB_COMMENTS to rdsdt_dtsacct; grant select on dba_tab_cols to rdsdt_dtsacct; grant select_catalog_role TO rdsdt_dtsacct; # Switch to CDB$ROOT to create a database account and grant permissions. ALTER SESSION SET container = CDB$ROOT; # Set the required session parameter, then create a database account (e.g., rdsdt_dtsacct) and grant permissions. alter session set "_ORACLE_SCRIPT"=true; create user rdsdt_dtsacct IDENTIFIED BY rdsdt_dtsacct; grant create session to rdsdt_dtsacct; grant connect to rdsdt_dtsacct; grant select on v_$logmnr_contents to rdsdt_dtsacct; grant LOGMINING TO rdsdt_dtsacct; grant EXECUTE_CATALOG_ROLE to rdsdt_dtsacct; grant execute on sys.dbms_logmnr to rdsdt_dtsacct;Oracle 12c a 19c (não multitenant)
# Create a database account (for example, rdsdt_dtsacct) and grant permissions. create user rdsdt_dtsacct IDENTIFIED BY rdsdt_dtsacct; grant create session to rdsdt_dtsacct; grant connect to rdsdt_dtsacct; grant resource to rdsdt_dtsacct; grant select on V_$LOGMNR_LOGS to rdsdt_dtsacct; grant select on all_objects to rdsdt_dtsacct; grant select on all_tab_cols to rdsdt_dtsacct; grant select on dba_registry to rdsdt_dtsacct; grant select any table to rdsdt_dtsacct; grant select any transaction to rdsdt_dtsacct; grant select on v$database to rdsdt_dtsacct; grant select on dba_objects to rdsdt_dtsacct; grant select on DBA_TAB_COMMENTS to rdsdt_dtsacct; grant select on dba_tab_cols to rdsdt_dtsacct; -- v$log privileges grant select on v_$log to rdsdt_dtsacct; -- v$logfile privileges grant select on v_$logfile to rdsdt_dtsacct; -- v$archived_log privileges grant select on v_$archived_log to rdsdt_dtsacct; -- v$parameter privileges grant select on v_$parameter to rdsdt_dtsacct; -- v$database privileges grant select on v_$database to rdsdt_dtsacct; -- v$active_instances privileges grant select on v_$active_instances to rdsdt_dtsacct; -- v$instance privileges grant select on v_$instance to rdsdt_dtsacct; -- v$logmnr_contents privileges grant select on v_$logmnr_contents to rdsdt_dtsacct; grant select on sys.USER$ to rdsdt_dtsacct; grant select on SYS.OBJ$ to rdsdt_dtsacct; grant select on SYS.COL$ to rdsdt_dtsacct; grant select on SYS.IND$ to rdsdt_dtsacct; grant select on SYS.ICOL$ to rdsdt_dtsacct; grant select on SYS.CDEF$ to rdsdt_dtsacct; grant select on SYS.CCOL$ to rdsdt_dtsacct; grant select on SYS.TABPART$ to rdsdt_dtsacct; grant select on SYS.TABSUBPART$ to rdsdt_dtsacct; grant select on SYS.TABCOMPART$ to rdsdt_dtsacct; grant LOGMINING TO rdsdt_dtsacct; grant EXECUTE_CATALOG_ROLE to rdsdt_dtsacct; grant execute on sys.dbms_logmnr to rdsdt_dtsacct; grant select_catalog_role TO rdsdt_dtsacct;NotaPara mais informações sobre a arquitetura multitenant do Oracle, consulte Oracle Multitenant.
Procedimento
-
Faça login no console do DTS.
NotaSe for redirecionado automaticamente para o console do Data Management (DMS), clique em
no canto inferior direito e depois clique em
para retornar ao console clássico do DTS. No painel de navegação à esquerda, clique em Data Migration.
-
Na parte superior da página Migration Tasks, selecione a região onde a instância de destino está localizada.
No canto superior direito da página, clique em Create Data Migration Task.
-
Configure as definições de conexão dos bancos de dados de origem e de destino.
Categoria
Parâmetro
Descrição
N/A
Task Name
O DTS gera automaticamente um nome para a tarefa. Para facilitar a identificação, recomendamos especificar um nome descritivo. O nome não precisa ser único.
Source Database
Instance Type
Selecione uma opção com base no local onde o banco de dados de origem está implantado. Este tópico usa self-managed database on an ECS instance como exemplo.
NotaSe seu banco de dados autogerenciado usar um tipo de instância diferente, preparações adicionais serão necessárias. Para mais informações, consulte Visão geral da preparação.
Region
Selecione a região onde a instância ECS que hospeda o banco de dados Oracle está localizada.
ECS Instance ID
Selecione o ID da instância ECS que hospeda o banco de dados Oracle autogerenciado.
Database Type
Selecione Oracle.
Port
Insira a porta de serviço do banco de dados Oracle autogerenciado. Padrão: 1521.
Instance Type
-
Non-RAC Instance: Se selecionar esta opção, especifique também o SID.
-
RAC Instance: Se selecionar esta opção, especifique também o Service Name.
Neste exemplo, Non-RAC Instance está selecionado.
SID
Insira o SID do banco de dados Oracle autogerenciado.
Database Account
Insira a conta do banco de dados Oracle autogerenciado. Para obter informações sobre as permissões necessárias, consulte Permissões necessárias para contas de banco de dados.
Database Password
Insira a senha da conta do banco de dados.
NotaApós inserir as informações do banco de dados de origem, clique em Test Connectivity ao lado de Database Password para verificar se as informações estão corretas. Se estiverem corretas, a mensagem Passed será exibida. Se a mensagem Failed for exibida, clique em Diagnose ao lado da mensagem Failed e ajuste as informações do banco de dados de origem conforme as orientações.
Destination Database
Instance Type
Selecione AnalyticDB for PostgreSQL.
Region
Selecione a região onde a instância de destino do AnalyticDB for PostgreSQL está localizada.
Instance ID
Selecione o ID da instância de destino do AnalyticDB for PostgreSQL.
Database
Insira o nome do banco de dados de destino para a migração de dados.
Database Account
Insira a conta do banco de dados da instância de destino do AnalyticDB for PostgreSQL. Para obter informações sobre as permissões necessárias, consulte Permissões necessárias para contas de banco de dados.
Database Password
Insira a senha da conta do banco de dados.
-
-
Após concluir a configuração, clique em Set Whitelist and Next no canto inferior direito da página.
Se a origem ou o destino for uma instância de banco de dados da Alibaba Cloud, como ApsaraDB for MySQL ou ApsaraDB for MongoDB, o DTS adiciona automaticamente os endereços IP de seus servidores na região correspondente à lista de permissões da instância. Se a origem ou o destino for um banco de dados autogerenciado em uma instância ECS, o DTS adiciona automaticamente seus endereços IP às regras de segurança da instância ECS. Garanta também que o banco de dados autogerenciado não restrinja o acesso da instância ECS. Se o banco de dados for um cluster implantado em várias instâncias ECS, adicione manualmente os endereços IP do DTS às regras de segurança de cada instância ECS. Se a origem ou o destino for um banco de dados em um data center on-premises ou em outra nuvem, adicione manualmente os endereços IP do DTS da região correspondente para permitir o acesso dos servidores do DTS. Para obter uma lista de endereços IP dos servidores do DTS, consulte Endereços IP dos servidores do DTS.
AvisoAdicionar os blocos CIDR públicos dos servidores do DTS, seja automática ou manualmente, pode introduzir riscos de segurança. Ao usar este produto, você reconhece e aceita esses riscos potenciais. É sua responsabilidade implementar medidas básicas de segurança, incluindo, mas não se limitando a, usar senhas fortes, restringir portas abertas, usar autenticação para chamadas internas de API, revisar e restringir regularmente segmentos de rede desnecessários ou conectar-se por meio de redes privadas como Express Connect, VPN Gateway ou Smart Access Gateway.
-
Selecione os tipos de migração, tipos de operação e objetos de migração.
Parâmetro
Descrição
Migration Types
-
Se precisar apenas de uma migração completa, selecione Schema Migration e Full Data Migration.
-
Para realizar uma migração sem tempo de inatividade, selecione Schema Migration, Full Data Migration e Incremental Data Migration.
NotaSe Incremental Data Migration não estiver selecionado, evite gravar novos dados no banco de dados de origem durante a migração para garantir a consistência dos dados.
Operation Types
Selecione os tipos de operação a serem sincronizados durante a migração incremental de dados conforme seus requisitos de negócio. Todos os tipos de operação são selecionados por padrão.
Objects to Migrate
Na caixa Available, clique nos objetos que deseja migrar e depois clique no ícone
para movê-los para a caixa Selected Objects.Nota-
Selecione objetos para migrar no nível da tabela.
-
Por padrão, os objetos migrados mantêm seus nomes originais no banco de dados de destino. Para renomear um objeto, use o recurso de mapeamento de nomes de objetos. Para mais informações, consulte Mapeamento de nomes de objetos.
-
Se usar o recurso de mapeamento de nomes de objetos, outros objetos que dependem do objeto renomeado podem falhar na migração.
Object Name Mapping
Para renomear um objeto migrado na instância de destino, use o recurso de mapeamento de nomes de objetos. Para mais informações, consulte Mapeamento de nomes de objetos.
ImportanteSe usar mapeamento de colunas para uma migração parcial de tabela ou se os schemas das tabelas de origem e destino forem diferentes, os dados nas colunas que existem na tabela de origem, mas não na tabela de destino, serão perdidos.
Connection Failure Retry Duration
A duração padrão de nova tentativa é de 12 horas. Especifique uma duração personalizada. Se o DTS se reconectar aos bancos de dados de origem e destino dentro da duração especificada, a tarefa de migração será retomada automaticamente. Caso contrário, a tarefa falhará.
NotaO DTS cobra pelo tempo de execução da tarefa durante o período de nova tentativa de conexão. Recomendamos personalizar a duração da nova tentativa com base nas necessidades do seu negócio ou liberar a instância do DTS prontamente após a liberação das instâncias dos bancos de dados de origem e destino.
Enclose Object Names in Quotation Marks
Especifica se os nomes dos objetos de destino devem ser colocados entre aspas. Se selecionar Yes e uma das seguintes condições for atendida, o DTS adicionará aspas simples ou duplas ao objeto de destino durante a migração de schema e a migração incremental de dados:
-
O ambiente do banco de dados de origem diferencia maiúsculas de minúsculas e os nomes dos objetos usam letras mistas.
-
Um nome de tabela de origem não começa com uma letra e contém caracteres diferentes de letras, dígitos ou caracteres especiais suportados.
NotaOs caracteres especiais suportados são sublinhados (_), sinais de número (#) e cifrões ($).
-
Os nomes de schema, tabela ou coluna a serem migrados são palavras-chave, palavras reservadas ou caracteres inválidos no banco de dados de destino.
-
-
Defina a chave primária e a chave de distribuição para as tabelas a serem migradas para a instância do AnalyticDB for PostgreSQL.
Na página de configuração, defina o Type para cada tabela, como uma tabela distribuída por hash. Após a configuração, a coluna Definition Status exibirá "Defined".
NotaPara mais informações sobre chaves primárias e chaves de distribuição, consulte Restrições de tabela e Chaves de distribuição de tabela.
Se alguma tabela não tiver chave primária, a opção Set Primary Keys and Distribution Keys of All Tables Without Primary Keys to ROWID aparecerá nesta página. Selecionar esta opção adiciona uma coluna ROWID às tabelas de destino como chave primária e chave de distribuição.
-
Após concluir a configuração, clique em Precheck and Start no canto inferior direito da página.
NotaAntes do início da tarefa de migração, o DTS executa uma verificação prévia. A tarefa só pode começar após passar nessa verificação.
-
Se a verificação prévia falhar, clique no ícone
ao lado do item com falha para visualizar os detalhes.Corrija os problemas conforme indicado e execute a verificação prévia novamente.
Se não precisar corrigir os itens de aviso, selecione Ignore e clique em Ignore Warnings and Rerun Precheck para executar a verificação prévia novamente.
Depois que a tarefa passar na verificação prévia, clique em Next.
Na caixa de diálogo Confirm Settings que aparece, selecione uma Instance Class e marque a caixa de seleção Data Transmission Service (pay-as-you-go) Service Terms.
-
Clique em Buy and Start para iniciar a migração.
-
Migração de schema + Migração completa de dados
Permita que a tarefa seja concluída automaticamente. Interrompê-la manualmente pode resultar em dados incompletos.
-
Migração de schema + Migração completa de dados + Migração incremental de dados
A tarefa de migração não para automaticamente. Interrompa-a manualmente.
ImportanteEscolha um horário apropriado para interromper a tarefa manualmente, como em horários de baixa demanda ou quando estiver pronto para transferir seus negócios para o cluster de destino.
Aguarde até que a tarefa de migração entre na fase de Incremental Data Migration e o status mostre Undelayed. Em seguida, pare de gravar dados no banco de dados de origem por alguns minutos. Durante esse período, o status de Incremental Data Migration pode apresentar latência.
Aguarde até que o status de Incremental Data Migration mostre Undelayed novamente. Depois, interrompa manualmente a tarefa de migração.

-