Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
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 TABLESyntax. Daher wird eine veröffentlichte Tabelle namenstestalsTESTrepliziert. 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):Für Oracle hat ein Server höchstens eine Datenbank, sodass man die Datenbank nicht angeben muss.
Für IBM Db2 geben Sie die Datenbank in der DB2-Verbindungszeichenfolge an. Weitere Informationen finden Sie unter Erstellen eines Abonnements für einen Nicht-SQL Server-Abonnenten.
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:
NULLundNOT NULL. Primärschlüsselbeschränkungen werden als eindeutige Indizes repliziert.Verschiedene Datenbanken behandeln den Wert
NULLunterschiedlich. Dieser Unterschied beeinflusst, wie ein leerer Wert, eine leere Zeichenkette und aNULLdargestellt werden. Dieser Unterschied beeinflusst das Verhalten von Werten, die in Spalten mit eindeutig definierten Einschränkungen eingefügt werden. Zum Beispiel erlaubt Oracle mehrereNULLWerte in einer Spalte, die als eindeutig gilt, während SQL Server nur einen einzigenNULLWert in einer eindeutigen Spalte zulässt.Ein weiterer Faktor ist, wie
NULLWerte, leere Zeichenketten und leere Werte behandelt werden, wenn die Spalte alsNOT 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.