Condividi tramite


Sottoscrittori non SQL Server

I seguenti Sottoscrittori non SQL Server possono abbonarsi a pubblicazioni snapshot e transazionali usando sottoscrizioni push. Le sottoscrizioni sono supportate per le due versioni più recenti di ogni database elencate usando la versione più recente del provider OLE DB elencata.

La replica eterogenea a sottoscrittori non SQL Server è obsoleta. La pubblicazione Oracle è deprecata. Per spostare dati, creare soluzioni utilizzando Change Data Capture e SSIS.

Attenzione

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

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

Per informazioni sulla creazione di sottoscrizioni a Oracle e IBM DB2, vedere Sottoscrittori Oracle e Sottoscrittori IBM DB2.

Considerazioni per i Sottoscrittori 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 nei Sottoscrittori non SQL Server (le viste indicizzate non possono essere replicate come viste indicizzate).

  • Quando si crea una pubblicazione nella Creazione guidata della nuova pubblicazione e quindi la sua abilitazione per i sottoscrittori che non utilizzano SQL Server tramite la finestra di dialogo delle Proprietà della pubblicazione, il proprietario di tutti gli oggetti nel database di sottoscrizione non viene specificato per i sottoscrittori che non utilizzano SQL Server, mentre per i sottoscrittori di Microsoft SQL Server è impostato come il proprietario dell'oggetto corrispondente nel database della pubblicazione.

  • Se una pubblicazione include sottoscrittori di SQL Server e Sottoscrittori non SQL Server, la pubblicazione deve essere abilitata per i Sottoscrittori non SQL Server prima che vengano create sottoscrizioni ai Sottoscrittori di SQL Server.

  • Per impostazione predefinita, gli script generati dall'agente snapshot per sottoscrittori non SQL Server usano identificatori non delimitati nella sintassi CREATE TABLE. Pertanto, una tabella pubblicata denominata 'test' viene replicata come 'TEST'. Per utilizzare lo stesso caso della tabella nel database di pubblicazione, utilizzare il parametro -QuotedIdentifier per l'agente di distribuzione. Il parametro -QuotedIdentifier deve essere usato anche se i nomi degli oggetti pubblicati, ad esempio tabelle, colonne e vincoli, includono spazi o parole riservate nella versione del database nel Sottoscrittore non SQL Server. Per altre informazioni su questo parametro, vedere Replication Distribution Agent.

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

  • Per impostazione predefinita per i Sottoscrittori non SQL Server, l'agente di distribuzione usa il valore [(destinazione predefinita)] per il database di sottoscrizione (il parametro -SubscriberDB per l'agente di distribuzione):

  • Se il server di distribuzione DI SQL Server è in esecuzione in una piattaforma a 64 bit, è necessario usare la versione a 64 bit del provider OLE DB appropriato.

  • La replica sposta i dati in formato Unicode indipendentemente dalle regole di confronto/tabelle codici usate nel server di pubblicazione e nel Sottoscrittore. È consigliato scegliere una collatione/pagina codice compatibile durante la replica tra Editori e Sottoscrittori.

  • Se un articolo viene aggiunto o eliminato da una pubblicazione, è necessario reinizializzare le sottoscrizioni ai Sottoscrittori non SQL Server.

  • Gli unici vincoli supportati per tutti i Sottoscrittori non SQL Server sono NULL e NOT NULL. I vincoli di chiave primaria vengono replicati come indici univoci.

  • Il valore NULL viene gestito in modo diverso da database diversi, che influisce sulla rappresentazione di un valore vuoto, di una stringa vuota e di un valore NULL. Ciò a sua volta influisce sul comportamento dei valori inseriti in colonne con vincoli univoci definiti. Ad esempio, Oracle consente più valori NULL in una colonna considerata univoca, mentre SQL Server consente solo un singolo valore NULL in una colonna univoca.

    Un fattore aggiuntivo è il modo in cui i valori NULL, le stringhe vuote e i valori vuoti vengono considerati quando la colonna viene definita come NOT NULL. Per informazioni su come risolvere questo problema per i Sottoscrittori Oracle, vedere Sottoscrittori Oracle.

  • I metadati correlati alla replica (tabella di sequenza di transazioni) non vengono eliminati dai sottoscrittori non SQL Server quando la sottoscrizione viene rimossa.

Conformità ai requisiti del database dei sottoscrittori

  • Lo schema e i dati pubblicati devono rispettare i requisiti del database presso il Sottoscrittore. Ad esempio, se un database non SQL Server ha dimensioni massime massime inferiori rispetto a SQL Server, è necessario assicurarsi che lo schema e i dati pubblicati non superino queste dimensioni.

  • Le tabelle replicate in Sottoscrittori non SQL Server adotteranno le convenzioni di denominazione delle tabelle del database nel Sottoscrittore.

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

Supporto delle funzionalità di replica

  • SQL Server offre due tipi di sottoscrizioni: push e pull. I Sottoscrittori non SQL Server devono usare sottoscrizioni push, in cui l'agente di distribuzione viene eseguito nel server di distribuzione di SQL Server.

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

  • I Sottoscrittori non SQL Server non possono usare sottoscrizioni ad aggiornamento immediato o ad aggiornamento in coda o nodi in una topologia peer-to-peer.

  • I Sottoscrittori non SQL Server non possono essere inizializzati automaticamente da un backup.

Vedere anche

Replicazione di database eterogenei
Sottoscrivere pubblicazioni