Nicht-SQL Server-Abonnenten

Gilt für:SQL Server

Die folgenden Nicht-SQL Server-Abonnenten können Snapshot- und transaktionale Publikationen durch Push-Abonnements abonnieren. Die beiden aktuellsten Versionen jeder Datenbank unterstützen Abonnements unter Verwendung der aktuellsten Version des aufgeführten OLE-Datenbankanbieters.

Die heterogene Replikation an Nicht-SQL-Server-Abonnenten ist veraltet. Oracle-Publishing ist veraltet. Um Daten zu verschieben, erstellen Sie Lösungen durch Change Data Capture und SSIS.

Achtung

Diese Funktion wird in einer zukünftigen Version von SQL Serverentfernt. Nutzen Sie diese Funktionen bei Neuentwicklungen nicht mehr, und planen Sie die Änderung von Anwendungen, die diese Funktion zurzeit verwenden.

Datenbank Betriebssystem Anbieter
Oracle Alle von Oracle unterstützten Plattformen Oracle OLE DB-Anbieter (von Oracle bereitgestellt)
IBM Db2 MVS, AS400, Unix, Linux, Windows ausgenommen Version 9.x Microsoft Host Integration Server (HIS) OLE DB-Anbieter

Oracle-Versionsinformationen:
SQL Server unterstützt die folgenden heterogenen Szenarien für die Transaktions- und Momentaufnahmereplikation:

  • Veröffentlichen von SQL Server-Daten für Nicht-SQL Server-Abonnenten.

  • Beim Veröffentlichen von Daten an und von Oracle bestehen folgende Einschränkungen:

Replikation 2016 oder früher 2017 oder neuer
Replikation von Oracle Nur Oracle 10g oder früher unterstützen Nur Unterstützung für Oracle 10g oder älter
Replikation zu Oracle Bis Oracle 12c Nicht unterstützt

Die heterogene Replikation für Abonnenten, die nicht SQL Server verwenden, ist veraltet. Oracle-Publishing ist veraltet. Um Daten zu verschieben, erstellen Sie Lösungen durch Change Data Capture und SSIS.

Weitere Informationen zum Erstellen von Abonnements für Oracle und IBM Db2, finden Sie unter Oracle-Abonnenten und IBM Db2-Abonnenten.

Überlegungen für Nicht-SQL Server-Abonnenten

Beachten Sie beim Replizieren von Nicht-SQL Server-Abonnenten die folgenden Überlegungen:

Allgemeine Überlegungen

  • Replication unterstützt das Veröffentlichen von Tabellen und indexierten Ansichten als Tabellen für Nicht-SQL Server-Abonnenten (indexierte Ansichten können nicht als indexierte Ansichten repliziert werden).

  • Wenn du eine Publikation im New Publication Wizard erstellst und sie dann für Nicht-SQL Server-Abonnenten über das Publikations-Properties-Dialogfeld aktivierst, gibst du nicht den Besitzer aller Objekte in der Abonnementdatenbank für Nicht-SQL Server-Abonnenten an. Für Microsoft SQL Server-Abonnenten ist der Besitzer der Eigentümer des entsprechenden Objekts in der Publikationsdatenbank.

  • Wenn eine Publikation sowohl SQL Server-Abonnenten als auch Nicht-SQL Server-Abonnenten hat, müssen Sie die Publikation für Nicht-SQL Server-Abonnenten aktivieren, bevor Sie Abonnements für SQL Server-Abonnenten erstellen.

  • Standardmäßig verwenden Skripte, die der Momentaufnahmen-Agent für Nicht-SQL Server-Abonnenten generiert, nicht angeführte Kennungen in der CREATE TABLE Syntax. Daher wird eine veröffentlichte Tabelle namens test als TESTrepliziert. Um dieselbe Groß- und Kleinschreibung wie die der Tabelle in der Veröffentlichungsdatenbank zu verwenden, verwenden Sie für den Verteilungs-Agent den Parameter -QuotedIdentifier. Sie müssen außerdem den Parameter -QuotedIdentifier verwenden, wenn veröffentlichte Objektnamen (wie Tabellen, Spalten und Einschränkungen) Leerzeichen oder reservierte Wörter in der Datenbankversion beim Nicht-SQL Server-Abonnenten enthalten. Weitere Informationen zu diesem Parameter finden Sie unter Replikationsverteilungs-Agent.

  • Das Konto, unter dem der Verteilungs-Agent ausgeführt wird, muss über Lesezugriff für das Installationsverzeichnis des OLE DB-Anbieters verfügen.

  • Standardmäßig verwendet der Verteilungs-Agent für Abonnenten ohne SQL Server einen Wert von [(default destination)] für die Abonnementdatenbank (den -SubscriberDB-Parameter für den Verteilungs-Agent):

  • Wenn der SQL Server-Verteiler auf einer 64-Bit-Plattform ausgeführt wird, müssen Sie die 64-Bit-Version des entsprechenden OLE DB-Anbieters verwenden.

  • Die Replikation überträgt Daten im Unicode-Format, unabhängig von den Sortierreihenfolgen oder Codepages, die auf dem Publisher und Subscriber verwendet werden. Wählen Sie beim Replizieren zwischen Publishern und Abonnenten eine kompatible Kollation oder Codepage aus.

  • Wenn Sie einen Artikel aus einer Publikation hinzufügen oder löschen, müssen Sie Abonnements für Nicht-SQL Server-Abonnenten neu initialisieren.

  • Die einzigen für alle Nicht-SQL Server-Abonnenten unterstützten Einschränkungen sind: NULL und NOT NULL. Primärschlüsselbeschränkungen werden als eindeutige Indizes repliziert.

  • Verschiedene Datenbanken behandeln den Wert NULL unterschiedlich. Dieser Unterschied beeinflusst, wie ein leerer Wert, eine leere Zeichenkette und a NULL dargestellt werden. Dieser Unterschied beeinflusst das Verhalten von Werten, die in Spalten mit eindeutig definierten Einschränkungen eingefügt werden. Zum Beispiel erlaubt Oracle mehrere NULL Werte in einer Spalte, die als eindeutig gilt, während SQL Server nur einen einzigen NULL Wert in einer eindeutigen Spalte zulässt.

    Ein weiterer Faktor ist, wie NULL Werte, leere Zeichenketten und leere Werte behandelt werden, wenn die Spalte als NOT NULLdefiniert ist. Informationen zum Umgang mit Oracle-Abonnenten finden Sie unter Oracle-Abonnenten.

  • Die Replikation löscht keine replikationsbezogenen Metadaten (Transaktionssequenztabelle) von Nicht-SQL Server-Abonnenten, wenn du das Abonnement entfernst.

Erfüllen der Anforderungen der Abonnentendatenbank

  • Das veröffentlichte Schema und die Daten müssen den Anforderungen der Datenbank beim Abonnenten entsprechen. Wenn zum Beispiel eine nicht-SQL Server-Datenbank eine kleinere maximale Zeilengröße als SQL Server hat, sollten Sie sicherstellen, dass das veröffentlichte Schema und die Daten diese Größe nicht überschreiten.

  • Tabellen, die an Nicht-SQL Server-Abonnenten repliziert werden, übernehmen die Tabellenbenennungskonventionen der Datenbank beim Abonnenten.

  • DDL wird für Nicht-SQL Server-Abonnenten nicht unterstützt. Weitere Informationen zu Schemaänderungen finden Sie unter Vornehmen von Schemaänderungen in Veröffentlichungsdatenbanken.

Unterstützung für Replikationsfunktionen

  • SQL Server stellt zwei Arten von Abonnements bereit: Push und Pull. Nicht-SQL Server-Abonnenten müssen Pushabonnements verwenden, wobei der Verteilungs-Agent auf dem SQL Server-Verteiler ausgeführt wird.

  • SQL Server stellt zwei Momentaufnahmeformate bereit: systemeigener BCP-Modus und Zeichenmodus. Abonnenten, die nicht SQL Server verwenden, benötigen Snapshots im Zeichenmodus.

  • Abonnenten, die nicht SQL Server verwenden, können keine Abonnements mit sofortiger Aktualisierung oder mit Aktualisierung über Warteschlangen verwenden und können auch keine Knoten in einer Peer-to-Peer-Topologie sein.

  • Nicht-SQL Server-Abonnenten können nicht automatisch aus einem Backup initialisiert werden.