Todos os produtos
Search
Central de documentação

AnalyticDB:Sincronizar dados do RDS for SQL Server para o AnalyticDB for PostgreSQL

Última atualização: Sep 18, 2026

Você pode sincronizar dados de uma instância ApsaraDB RDS for SQL Server para uma instância AnalyticDB for PostgreSQL, centralizando a análise de dados corporativos.

Pré-requisitos

Considerações

  • Durante uma migração completa de dados, o DTS consome recursos de leitura e gravação nos bancos de dados de origem e destino, aumentando a carga sobre eles. Se os seus bancos de dados apresentam desempenho limitado, especificações baixas ou cargas de trabalho elevadas (por exemplo, consultas SQL lentas ou tabelas sem chave primária no banco de origem, ou deadlocks no banco de destino), o aumento de carga pode sobrecarregá-los ou até causar interrupções no service. Realize a migração de dados em horários de baixa demanda, como quando a utilização de CPU de ambos os bancos de dados estiver abaixo de 30%.

  • O DTS crie uma tabela de heartbeat chamada dts_log_heart_beat no banco de dados de origem para monitoramento de latência.

  • O DTS oferece suporte à sincronização inicial de esquema para os seguintes tipos de objeto: Schema, Table, View, Function e Procedure.

    Aviso

    Como esta é uma tarefa de sincronização heterogênea, os tipos de dados podem não ter correspondência direta. Avalie o impacto do mapeamento de tipos de dados no seu negócio antes de prosseguir. Para mais informações, consulte Data type mappings for initial schema synchronization.

  • A sincronização é compatível no nível de tabela (tabelas append-optimized não são compatíveis). Você pode modifique os mapeamentos de colunas. Ao utilizar mapeamento de colunas para sincronização parcial de tabela, ou quando os esquemas das tabelas de origem e destino diferem, os dados das colunas de origem ausentes na tabela de destino são perdidos.

  • Os seguintes tipos de dados não podem ser sincronizados: TIMESTAMP, CURSOR, ROWVERSION, HIERARCHYID, SQL_VARIANT, SPATIAL GEOMETRY, SPATIAL GEOGRAPHY e TABLE.

Faturamento

Tipo de sincronização

Preço

Sincronização de esquema e sincronização completa de dados

Gratuito.

Sincronização incremental de dados

Cobrada. Para mais informações, consulte Billing overview.

Operações SQL compatíveis

  • Operações DDL: ADD COLUMN

    Nota

    Operações DDL transacionais não podem ser sincronizadas.

  • Operações DML: INSERT, UPDATE, DELETE

Permissões necessárias para contas de banco de dados

Banco de dados

Permissões necessárias

Método de autorização

Instância ApsaraDB RDS for SQL Server

Permissões de Owner no banco de dados selecionado para sincronização.

Modify account permissions

Instância AnalyticDB for PostgreSQL

  • Permissão LOGIN.

  • Permissões SELECT, CREATE, INSERT, UPDATE e DELETE nas tabelas de destino.

  • Permissões CONNECT e CREATE no banco de dados de destino.

  • Permissão CREATE no esquema de destino.

  • Permissão COPY (para cópia em lote baseada em memória).

Nota

Você também pode utilizar a conta inicial da instância AnalyticDB for PostgreSQL.

User and permission management

Procedimento

  1. Adquira uma tarefa de sincronização. Para mais informações, consulte Purchase procedure.

    Nota

    Ao realizar a compra, selecione a instância de origem como SQL Server, a instância de destino como AnalyticDB for PostgreSQL e a topologia de sincronização como One-way Synchronization.

  2. Acesse o console do DTS.

  3. No painel de navegação à esquerda, clique em Data Synchronization.

  4. No topo da página Synchronization Tasks, selecione a região onde a instância de destino está localizada.

  5. Localize a tarefa de sincronização de dados e clique em Configure Synchronization Channel.

  6. Configure as instâncias de origem e destino.

    Categoria

    Configuração

    Descrição

    N/D

    Synchronization Task Name

    O DTS gera automaticamente um nome para a tarefa. Recomendamos usar um nome descritivo para facilitar a identificação. O nome não precisa ser exclusivo.

    Source Instance Details

    Instance Type

    Selecione RDS Instance.

    Instance Region

    A região da instância de origem selecionada durante a compra. Essa configuração não pode ser alterada.

    Instance ID

    Selecione o ID da instância de origem ApsaraDB RDS for SQL Server.

    Database Account

    Insira a conta de banco de dados da instância ApsaraDB RDS for SQL Server. Para mais informações sobre as permissões necessárias, consulte Permissions required for database accounts.

    Database Password

    Insira a senha da conta de banco de dados.

    Connection Method

    Selecione Non-encrypted ou SSL-encrypted conforme suas necessidades. Ao selecione SSL-encrypted, ative primeiro a criptografia SSL na instância RDS. Para mais informações, consulte Configure SSL encryption.

    Nota

    A configuração Encryption está disponível apenas nas regiões da China continental e China (Hong Kong).

    Destination Instance Details

    Instance Type

    Selecione AnalyticDB for PostgreSQL.

    Instance Region

    A região da instância de destino selecionada durante a compra. Essa configuração não pode ser alterada.

    Instance ID

    Selecione o ID da instância de destino AnalyticDB for PostgreSQL.

    Database Name

    Insira o nome do banco de dados de destino que contém as tabelas a sincronizar.

    Database Account

    Insira a conta de banco de dados da instância AnalyticDB for PostgreSQL. Para mais informações sobre as permissões necessárias, consulte Permissions required for database accounts.

    Database Password

    Insira a senha da conta de banco de dados.

  7. No canto inferior direito da página, clique em Set Whitelist and Next.

    Se o banco de dados de origem ou destino for uma instância de banco de dados Alibaba Cloud, como uma instância ApsaraDB RDS for MySQL ou ApsaraDB for MongoDB, o DTS adiciona automaticamente os blocos CIDR dos servidores DTS à lista de permissões de endereços IP da instância. Se o banco de dados de origem ou destino for um banco de dados autogerenciado hospedado em uma instância Elastic Compute Service (ECS), o DTS adiciona automaticamente os blocos CIDR dos servidores DTS às regras do grupo de segurança da instância ECS, e você deve garantir que a instância ECS consiga acessar o banco de dados. Se o banco de dados autogerenciado estiver hospedado em várias instâncias ECS, adicione manualmente os blocos CIDR dos servidores DTS às regras do grupo de segurança de cada instância ECS. Se o banco de dados de origem ou destino for um banco de dados autogerenciado implantado em um data center ou fornecido por um provedor de cloud terceirizado, adicione manualmente os blocos CIDR dos servidores DTS à lista de permissões de endereços IP do banco de dados para permitir o acesso pelo DTS. Para mais informações, consulte Whitelist DTS server IP addresses.

    Aviso

    Adicionar os blocos CIDR de IP público dos servidores DTS, seja automática ou manualmente, pode apresentar riscos de segurança. Ao utilizar este product, você reconhece e aceita esses riscos potenciais. Implemente proteções básicas de segurança, incluindo, mas não se limitando a: fortalecer a segurança de senhas, restringir portas abertas para blocos CIDR, utilizar autenticação na comunicação interna de API, e revisar e restringir periodicamente blocos CIDR desnecessários. Como alternativa, conecte-se ao banco de dados por uma rede interna, como uma linha dedicada, um VPN Gateway ou um Smart Access Gateway.

  8. Configure a política de sincronização e os objetos.

    Configuração

    Descrição

    Synchronization types

    Por padrão, Initial Schema Synchronization, Full Data Synchronization e Incremental Data Synchronization já estão selecionados. Após a conclusão da pré-verificação, o DTS sincroniza os esquemas e os dados existentes dos objetos selecionados para o banco de dados de destino, servindo como base para a sincronização incremental.

    Processing mode for existing destination tables

    • Precheck and Report Errors: o DTS verifica se existem tabelas de destino com os mesmos nomes das tabelas de origem. A pré-verificação é aprovada se nenhuma tabela correspondente for encontrada. Caso exista uma tabela correspondente, a pré-verificação falha e a tarefa não é iniciada.

      Nota

      Se o banco de dados de destino já contiver uma tabela com o mesmo nome que não pode ser excluída ou renomeada, renomeie a tabela de destino. Para mais informações, consulte Rename a synchronization object in the destination instance.

    • Ignore Errors and Proceed: ignora a verificação de tabelas com nomes idênticos no banco de dados de destino.

      Aviso

      Selecione Ignore Errors and Proceed pode causar inconsistência de dados. Por exemplo:

      • Se os esquemas forem iguais e um registro de destino tiver a mesma chave primária que um registro de origem, o registro de destino é preservado e o registro de origem não é sincronizado.

      • Quando os esquemas diferem, a sincronização inicial de dados pode falhar ou sincronizar apenas um subconjunto de colunas.

    Table merging

    • Yes: em cenários OLTP, o sharding é frequentemente utilizado para melhorar os tempos de resposta. O AnalyticDB for PostgreSQL armazena grandes volumes de dados em uma única tabela, simplificando as consultas. A mesclagem de tabelas permite sincronizar várias tabelas de origem com o mesmo esquema em uma única tabela do AnalyticDB for PostgreSQL.

      Nota
      • Após selecione várias tabelas de origem, utilize o recurso de mapeamento de nomes de objetos para mapeá-las a uma única tabela no AnalyticDB for PostgreSQL. Para mais informações, consulte Rename a synchronization object in the destination instance.

      • Adicione uma coluna __dts_data_source do tipo TEXT à tabela de destino para rastrear a origem dos dados. O DTS grava valores no formato <DTS data synchronization instance ID>:<source database name>.<source schema name>.<source table name>, como dts****:dtstestdata.testschema.customer1.

      • A mesclagem de tabelas é um recurso no nível da tarefa e não pode ser aplicada a tabelas individuais. Se precisar mesclar algumas tabelas e outras não, crie duas tarefas de sincronização separadas.

    • No: esta é a opção padrão.

    Operation types

    Selecione os tipos de operação a sincronizar conforme as necessidades do seu negócio. Por padrão, todos os tipos de operação já estão selecionados.

    Synchronization objects

    Na caixa Source Objects, clique em nos objetos que deseja sincronizar e, em seguida, clique em no ícone 向右小箭头 para movê-los para a caixa Selected Objects.

    Como este é um cenário de sincronização heterogênea, apenas tabelas podem ser sincronizadas. Outros objetos, como views, triggers e stored procedures, não são compatíveis.

    Nota
    • Por padrão, os nomes dos objetos sincronizados permanecem inalterados. Para utilizar nomes diferentes na instância de destino, consulte Rename a synchronization object in the destination instance.

    • Ao defina Merge Tables como Yes, utilize o recurso de mapeamento de nomes de objetos para mapear as tabelas de origem selecionadas a um único nome de tabela no AnalyticDB for PostgreSQL.

    Add quotation marks to object names

    Especifique se os nomes dos objetos de destino devem ser colocados entre aspas. Ao selecione Yes e caso alguma das condições a seguir seja atendida, o DTS adiciona aspas aos nomes dos objetos de destino durante a sincronização de esquema e a sincronização incremental de dados:

    • O ambiente do banco de dados de origem diferencia maiúsculas de minúsculas e utiliza nomes com caixa mista.

    • O nome da tabela de origem não começa com uma letra ou contém caracteres além de letras, números e caracteres especiais compatíveis.

      Nota

      Apenas sublinhados (_), cerquilhas (#) e cifrões ($) são aceitos como caracteres especiais.

    • O nome do esquema, da tabela ou da coluna a ser sincronizado é uma palavra-chave, uma palavra reservada ou um caractere inválido no banco de dados de destino.

    Nota

    Ao adicionar aspas, utilize os nomes entre aspas ao consultar os objetos após a sincronização.

    Edite mapped names

    Altere os nomes dos objetos sincronizados na instância de destino. Para mais informações, consulte Map databases, tables, and columns.

    Connection retry duration

    Se o DTS não conseguir se conectar à instância de origem ou destino, ele tenta reconectar por 720 minutos (12 horas) por padrão. Também é possível especifique uma duração personalizada para as novas tentativas. Se o DTS restabelecer a conexão com a instância de origem ou destino dentro da duração especificada, a tarefa de sincronização é retomada automaticamente. Caso contrário, a tarefa falha.

    Nota

    Você é cobrado pelo tempo de execução da tarefa durante as novas tentativas de conexão. Personalize a duração das novas tentativas de acordo com as necessidades do seu negócio ou libere a instância DTS assim que as instâncias de origem e destino forem liberadas.

  9. Configure o tipo de tabela, as colunas de chave primária e a chave de distribuição para as tabelas de destino no AnalyticDB for PostgreSQL.

    Nota

    Para mais informações sobre colunas de chave primária e chave de distribuição, consulte Table constraints e Table distribution key.

  10. Após concluir as configurações anteriores, clique em Precheck and Start no canto inferior direito da página.

    Nota
    • Antes de a tarefa de sincronização ser iniciada oficialmente, uma pré-verificação é executada. A tarefa só pode ser iniciada após a aprovação da pré-verificação.

    • Se a pré-verificação falhar, clique em no ícone Prompt ao lado de um item de verificação específico para visualize os detalhes da falha.

      • Siga as instruções para corrigir o problema e execute a pré-verificação novamente.

      • Caso não precise corrigir os itens de aviso, selecione Ignore, Ignore Warning Items and Rerun Precheck para ignorar os itens de aviso e execute a pré-verificação novamente.

  11. Após a caixa de diálogo Precheck exibir Precheck Passed, feche a caixa de diálogo Precheck. A tarefa de sincronização será iniciada.

  12. Aguarde a tarefa concluir a inicialização e insira no status Synchronizing.

    Você pode visualize o status da tarefa de sincronização de dados na página Data Synchronization.

Perguntas frequentes

P: Como encontrar as tabelas de destino na instância AnalyticDB for PostgreSQL?

R: Durante a sincronização inicial de esquema, o DTS sincroniza os objetos para o banco de dados de destino com base no esquema do banco de dados de origem. Neste exemplo, as tabelas customer e Student podem ser encontradas no esquema dbo do banco de dados dtstestdata na instância de destino.