Non-SQL Server Subscribers

Aplica-se a: SQL Server (todas as versões com suporte)

Os Assinantes não SQL Server a seguir podem assinar publicações transacionais e de instantâneo usando assinaturas push. As assinaturas oferecem suporte para as duas versões mais recentes de cada banco de dados listadas usando a mais recente versão do provedor OLE DB listado.

A replicação heterogênea para assinantes que não são do SQL Server foi preterida. A publicação Oracle foi preterida. Para mover dados, crie soluções usando a captura de dados de alterações e o SSIS.

Cuidado

Esse recurso será removido em uma versão futura do Microsoft SQL Server. Evite usar esse recurso em desenvolvimentos novos e planeje modificar os aplicativos que atualmente o utilizam.

Banco de dados Sistema operacional Provedor
Oracle Todas as plataformas que o Oracle dá suporte Provedor Oracle OLE DB (fornecido pelo Oracle)
IBM DB2 MVS, AS400, Unix, Linux, Windows menos 9.x Microsoft Host Integration Server (HIS) provedor de OLE DB

Informações sobre versão do Oracle:
SQL Server oferece suporte aos seguintes cenários heterogêneos para replicação transacional e de instantâneo:

  • Publicando dados do SQL Server para não assinantes doSQL Server .

  • A publicação de dados para e do Oracle tem as seguintes restrições:

Replicação 2016 ou anterior 2017 ou posterior
Replicação do Oracle Dá suporte apenas ao Oracle 10g ou anterior Dá suporte apenas ao Oracle 10g ou anterior
Replicação para o Oracle Até Oracle 12c Sem suporte

A replicação heterogênea para assinantes que não são do SQL Server foi preterida. A publicação Oracle foi preterida. Para mover dados, crie soluções usando a captura de dados de alterações e o SSIS.

Para obter mais informações sobre como criar assinaturas ao Oracle e IBM DB2, consulte Assinantes Oracle e IBM DB2 Subscribers.

Considerações para Assinantes não SQL Server

Lembre-se das seguintes considerações durante a replicação para Assinantes não SQL Server:

Considerações gerais

  • A replicação dá suporte a tabelas de publicação e exibições indexadas como tabelas para Assinantes nãoSQL Server (exibições indexadas não podem ser replicadas como exibições indexadas).

  • Ao criar uma publicação no Assistente para Novas Publicações e, em seguida, habilitá-la para Assinantes não SQL Server usando a caixa de diálogo Propriedades da Publicação, o proprietário de todos os objetos no banco de dados de assinatura não é especificado para Assinantes não SQL Server, enquanto para Assinantes do Microsoft SQL Server, ele é definido como o proprietário do objeto correspondente no banco de dados de publicação.

  • Se a publicação tiver Assinantes SQL Server e Assinantes não SQL Server, a publicação deverá ser habilitada para Assinantes não SQL Server antes de qualquer Assinante SQL Server ser criado.

  • Por padrão, scripts gerados pelo Agente de Instantâneo para Assinantes nãoSQL Server usam identificadores sem aspas na sintaxe de CREATE TABLE. Portanto, uma tabela publicada nomeada 'teste' é reproduzida como 'TESTE'. Para usar o mesmo tipo de caixa (maiúscula/minúscula) como a tabela no banco de dados de publicação, use o parâmetro -QuotedIdentifier para o Agente de Distribuição. O parâmetro -QuotedIdentifier deve também ser usado se os nomes de objetos publicados (assim como tabelas, colunas e restrições) incluírem espaços ou palavras que são palavras reservadas na versão do banco de dados no Assinante nãoSQL Server . Para obter mais informações sobre esse parâmetro, consulte Agente de Distribuição de Replicação.

  • A conta na qual o Agente de Distribuição é executado deve ter acesso de leitura ao diretório de instalação do provedor OLE DB.

  • Por padrão para Assinantes nãoSQL Server , o Agente de Distribuição usa o valor de [(destino padrão)] para o banco de dados da assinatura (o parâmetro -SubscriberDB para o Agente de Distribuição):

    • Para o Oracle, um servidor tem, no máximo, um banco de dados, assim não é necessário especificar o banco de dados.

    • Para IBM DB2, o banco de dados é especificado na cadeia de conexão DB2. Para obter mais informações, consulte Criar uma assinatura para um Assinante não SQL Server.

  • Se o Distribuidor SQL Server estiver executando em uma plataforma de 64 bits, você deverá usar a versão de 64 bits do provedor OLE DB apropriado.

  • A replicação move dados em formato Unicode independentemente da ordenação e das páginas de código usadas no Publicador e no Assinante. É recomendado que você escolha uma ordenação/página de código compatível ao replicar entre Publicadores e Assinantes.

  • Se um artigo for adicionado ou excluído de uma publicação, assinaturas para Assinantes nãoSQL Server devem ser reinicializadas.

  • As únicas restrições que oferecem suporte para todos os Assinantes não -SQL Server são: NULL e NOT NULL. As restrições de chave primária são replicadas como índices exclusivos.

  • O valor NULL é tratado de forma diferente por bancos de dados diferentes, o que afeta como um valor em branco, uma cadeia de caracteres vazia e um NULL são representados. Isto, por sua vez, afeta o comportamento de valores inseridos em colunas com restrições exclusivas definidas. Por exemplo, o Oracle permite valores múltiplos de NULL em uma coluna que é considerada exclusiva, enquanto o SQL Server permite apenas um único valor NULL em uma coluna exclusiva.

    Um fator adicional é como os valores de NULL, cadeias vazias, valores em branco são tratados quando a coluna é definida como NOT NULL. Para obter informações sobre como tratar deste assunto para Assinantes do Oracle, consulte Assinantes Oracle.

  • Os metadados relacionados à replicação (tabela de sequência de transação) não são excluídos de não assinantes doSQL Server quando a assinatura é removida.

Conformando aos requisitos do banco de dados do Assinante

  • Esquema e dados publicados devem conformar-se aos requisitos do banco de dados no Assinante. Por exemplo, se um banco de dados nãoSQL Server tem um tamanho máximo de linha menor que o SQL Server, você deve assegurar-se de que o esquema e dados publicados não excedam esse tamanho.

  • Tabelas replicadas para Assinantes não -SQL Server adotarão as convenções de nomenclatura de tabela do banco de dados no Assinante.

  • Não existe suporte para DDL para Assinantes não SQL Server. Para obter mais informações sobre alterações de esquema, consulte Fazer alterações de esquema em bancos de dados de publicação.

Suporte de recurso da replicação

  • OSQL Server oferece dois tipos de assinatura: push e pull. Assinantes nãoSQL Server devem usar assinaturas push onde o Agente de Distribuição é executado no Distribuidor SQL Server .

  • OSQL Server oferece dois formatos de instantâneo: modo de bcp nativo e modo de caractere. Assinantes nãoSQL Server requerem instantâneos de modo de caractere.

  • Assinantes nãoSQL Server não podem usar atualização imediata ou assinatura de atualização em fila ou ser nós em uma topologia de mesmo nível.

  • Assinantes nãoSQL Server não podem ser inicializados automaticamente de um backup.

Consulte Também

Replicação de banco de dados heterogênea
Assinar publicações