Compartilhar via


Assinantes que não são do SQL Server

Os assinantes que não utilizam o SQL Server e que estão listados a seguir podem assinar publicações instantâneas e transacionais usando assinaturas de envio. As assinaturas têm suporte para as duas versões mais recentes de cada banco de dados listadas usando a versão mais recente 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 descontinuada. Para mover dados, crie soluções usando a captura de dados de alteração e o SSIS.

Cuidado

Esse recurso será removido em uma versão futura do Microsoft SQL Server. Evite usar esse recurso em um novo trabalho de desenvolvimento e planeje modificar aplicativos que atualmente usam esse recurso.

Base de dados Sistema Operacional Fornecedor
Oráculo Todas as plataformas compatíveis com o Oracle Provedor Oracle OLE DB (fornecido pela Oracle)
IBM DB2 MVS, AS400, Unix, Linux, Windows, excluindo 9.x Provedor OLE DB do Microsoft Host Integration Server (HIS)

Para obter informações sobre como criar assinaturas para Oracle e IBM DB2, consulte Assinantes Oracle e Ibm DB2.

Considerações para assinantes que não são do SQL Server

Tenha as seguintes considerações em mente ao replicar para Assinantes que não utilizam SQL Server:

Considerações gerais

  • A replicação dá suporte à publicação de tabelas e visões indexadas como tabelas para Assinantes que não utilizam SQL Server (visões indexadas não podem ser replicadas como visões indexadas).

  • Ao criar uma publicação no Assistente para Nova Publicação e 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 uma publicação tiver Assinantes do SQL Server e não Assinantes do SQL Server, a publicação deverá ser habilitada para Assinantes que não são do SQL Server antes de qualquer assinatura para Assinantes do SQL Server ser criada.

  • Por padrão, os scripts gerados pelo Snapshot Agent para subscritores que não usam o SQL Server utilizam identificadores não entre aspas na sintaxe CREATE TABLE. Portanto, uma tabela publicada chamada 'test' é replicada como 'TEST'. Para usar o mesmo caso da tabela no banco de dados de publicação, use o parâmetro -QuotedIdentifier para o Distribution Agent. O parâmetro -QuotedIdentifier também deve ser usado se os nomes dos objetos publicados (como tabelas, colunas e restrições) incluírem espaços ou palavras reservadas na versão do banco de dados para o Assinante que não utiliza o SQL Server. Para obter mais informações sobre esse parâmetro, consulte Replication Distribution Agent.

  • 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 que não são do SQL Server, o Distribution Agent usa um valor [(destino padrão)] para o banco de dados de assinatura (o parâmetro -SubscriberDB para o Distribution Agent):

  • Se o Distribuidor do SQL Server estiver em execução 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 no formato Unicode, independentemente das páginas de ordenação/código usadas no Publicador e no Assinante. É recomendável que você escolha uma combinação de ordenação/código de página compatível durante a replicação entre Editores e Assinantes.

  • Se um artigo for adicionado ou excluído de uma publicação, as assinaturas para assinantes que não são do SQL Server deverão ser reinicializadas.

  • As únicas restrições suportadas para todos os Subscritores que não utilizam 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. Isso, por sua vez, afeta o comportamento dos valores inseridos em colunas com restrições exclusivas definidas. Por exemplo, o Oracle permite vários valores NULL em uma coluna considerada exclusiva, enquanto o SQL Server permite apenas um único valor NULL em uma coluna exclusiva.

    Um fator adicional é como valores NULL, cadeias de caracteres vazias e valores em branco são tratados quando a coluna é definida como NOT NULL. Para obter informações sobre como resolver esse problema para Assinantes Oracle, consulte Assinantes Oracle.

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

Em conformidade com os requisitos do banco de dados do assinante

  • O esquema e os dados publicados devem estar em conformidade com os requisitos do banco de dados no Assinante. Por exemplo, se um banco de dados não SQL Server tiver um tamanho de linha máximo menor que o SQL Server, você deverá garantir que o esquema e os dados publicados não excedam esse tamanho.

  • As tabelas replicadas para assinantes que não são do SQL Server adotarão as convenções de nomenclatura de tabela do banco de dados no Assinante.

  • Não há suporte para DDL para assinantes que não são do 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 a recursos de replicação

  • O SQL Server oferece dois tipos de assinaturas: push e pull. Assinantes que não são do SQL Server devem usar assinaturas push, nas quais o Distribution Agent é executado no Distribuidor do SQL Server.

  • O SQL Server oferece dois formatos de instantâneo: modo bcp nativo e modo de caractere. Assinantes que não são do SQL Server exigem instantâneos de modo de caractere.

  • Assinantes que não são do SQL Server não podem usar assinaturas de atualização imediata ou de atualização na fila ou ser nós em uma topologia ponto a ponto.

  • Assinaturas que não são do SQL Server não podem ser inicializadas automaticamente a partir de um backup.

Consulte Também

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