Sottoscrittori non SQL Server

Si applica a:SQL Server

I seguenti abbonati non SQL Server possono abbonarsi a pubblicazioni snapshot e transazionali utilizzando abbonamenti push. Le due versioni più recenti di ciascun database elencavano gli abbonamenti utilizzando la versione più recente del provider OLE DB elencato.

La replica eterogenea verso abbonati non SQL Server è obsoleta. La pubblicazione Oracle è deprecata. Per spostare i dati, crea soluzioni utilizzando la rilevazione dei dati di cambiamento e SSIS.

Attenzione

Questa funzionalità verrà rimossa nelle versioni future di SQL Server. Evitare di usare questa funzionalità in un nuovo progetto di sviluppo e prevedere interventi di modifica nelle applicazioni in cui è attualmente implementata.

Database Sistema operativo Fornitore
Oracle Tutte le piattaforme supportate da Oracle provider OLE DB Oracle (fornito da Oracle)
IBM Db2 MVS, AS400, Unix, Linux, Windows escluso 9.x Provider OLE DB di Microsoft Host Integration Server (HIS)

Informazioni sulla versione di Oracle:
SQL Server supporta gli scenari eterogenei seguenti per la replica transazionale e snapshot:

  • Pubblicazione di dati da SQL Server a sottoscrittori non SQL Server.

  • Pubblicazione di dati da e verso Oracle con le limitazioni seguenti:

Replicazione 2016 o versioni precedenti 2017 oppure versioni successive
Replicazione da Oracle Supporta solo Oracle 10g o versioni precedenti Supporta solo Oracle 10g o versioni precedenti
Replica verso Oracle Fino a Oracle 12c Non supportato

La replica eterogenea verso abbonati non SQL Server è obsoleta. La pubblicazione Oracle è deprecata. Per spostare i dati, crea soluzioni utilizzando la rilevazione dei dati di cambiamento e SSIS.

Per informazioni sulla creazione delle sottoscrizioni di Oracle e IBM Db2, vedere Sottoscrittori Oracle e Sottoscrittori IBM Db2.

Considerazioni per gli abbonati non SQL Server

Durante la replica verso Sottoscrittori non SQL Server, tenere presenti le considerazioni seguenti:

Considerazioni generali

  • La replica supporta la pubblicazione di tabelle e viste indicizzate come tabelle agli abbonati non-SQL Server (le viste indicizzate non possono essere replicate come viste indicizzate).

  • Quando crei una pubblicazione nella Nuova Publication Wizard e poi la abiliti per gli abbonati non SQL Server usando la finestra di dialogo Proprietà della Pubblicazione, non specifichi il proprietario di tutti gli oggetti nel database di abbonamenti per gli abbonati non SQL Server. Per gli abbonati di Microsoft SQL Server, il proprietario è il proprietario dell'oggetto corrispondente nel database di pubblicazione.

  • Se una pubblicazione ha sia SQL Server Subscribers che non SQL Server Subscribers, devi abilitare la pubblicazione per i non-SQL Server Subscribers prima di creare qualsiasi abbonamento a SQL Server Subscribers.

  • Per impostazione predefinita, gli script generati da agente di snapshot per i Sottoscrittori non SQL Server utilizzano identificatori senza virgolette nella sintassi CREATE TABLE. Pertanto, una tabella pubblicata chiamata test viene replicata come TEST. Per usare la stessa distinzione tra maiuscole e minuscole della tabella nel database di pubblicazione, usare il parametro -QuotedIdentifier per l'Agente di distribuzione. Devi anche utilizzare il parametro -QuotedIdentifier se i nomi degli oggetti pubblicati (come tabelle, colonne e vincoli) includono spazi o parole riservate nella versione del database presso il non-SQL Server Subscriber. Per ulteriori informazioni su questo parametro, vedere Agente distribuzione repliche.

  • L'account con il quale viene eseguito l'agente di distribuzione deve disporre di accesso in lettura alla directory di installazione del provider OLE DB.

  • Di default, per gli abbonati non SQL Server, l'agente di distribuzione utilizza un valore di [(default destination)] per il database di abbonamento (il parametro -SubscriberDB per il agente di distribuzione):

  • Se il server di distribuzione SQL Server viene eseguito su una piattaforma a 64 bit, è necessario utilizzare la versione a 64 bit del provider OLE DB appropriato.

  • La replicazione sposta i dati in formato Unicode indipendentemente dalla collazione o dalle code page utilizzate su Publisher e Subscriber. Scegli una pagina di collation o codice compatibile quando replichi tra Publisher e Abbonati.

  • Se aggiungi o elimini un articolo da una pubblicazione, devi riinizializzare le iscrizioni agli abbonati non SQL Server.

  • Gli unici vincoli supportati per tutti gli abbonati non SQL Server sono: NULL e NOT NULL. I vincoli delle chiavi primarie vengono replicati come indici univoci.

  • Database diversi trattano il valore NULL in modo differente. Questa differenza influisce su come vengono rappresentati un valore vuoto, una stringa vuota e una NULL a. Questa differenza influisce sul comportamento dei valori inseriti nelle colonne con vincoli unici definiti. Ad esempio, Oracle consente più NULL valori in una colonna considerata univoca, mentre SQL Server consente solo un singolo NULL valore in una colonna univoca.

    Un altro fattore è come NULL i valori, le stringhe vuote e i valori vuoti vengono trattati quando la colonna è definita come NOT NULL. Per informazioni sulla risoluzione di questo problema per i Sottoscrittori Oracle, vedere Sottoscrittori Oracle.

  • La replicazione non elimina i metadati relativi alla replica (tabella della sequenza delle transazioni) dagli abbonati non SQL Server quando si rimuove l'abbonamento.

Conformità ai requisiti del database degli abbonati

  • Lo schema pubblicato e i dati devono conformarsi ai requisiti del database presso l'Abbonato. Ad esempio, se un database non SQL Server ha una dimensione massima di riga più piccola rispetto a SQL Server, assicurati che lo schema pubblicato e i dati non superino questa dimensione.

  • Le tabelle replicate agli abbonati non-SQL Server adottano le convenzioni di denominazione delle tabelle del database presso l'abbonato.

  • DDL non è supportato per gli abbonati non SQL Server. Per altre informazioni sulle modifiche dello schema, vedere Apportare modifiche allo schema nei database di pubblicazione.

Supporto alle funzionalità di replicazione

  • SQL Server include due tipi di sottoscrizione: push e pull. I Sottoscrittori non SQL Server devono utilizzare le sottoscrizioni push nelle quali l'agente di distribuzione viene eseguito nel server di distribuzione SQL Server.

  • SQL Server offre due formati di snapshot: in modalità bcp nativa e in modalità carattere. I Sottoscrittori non SQL Server richiedono snapshot in modalità carattere.

  • Gli abbonati non SQL Server non possono utilizzare abbonamenti ad aggiornamento immediato o aggiornamenti in coda, né essere nodi in una topologia peer-to-peer.

  • Gli abbonati non-SQL Server non possono essere inizializzati automaticamente da un backup.