Freigeben über


Erstellen einer Veröffentlichung aus einer Oracle-Datenbank

In diesem Thema wird beschrieben, wie in SQL Server 2012 mit SQL Server Management Studio oder Transact-SQL eine Veröffentlichung aus einer Oracle-Datenbank erstellt wird.

In diesem Thema

  • Vorbereitungen:

    Voraussetzungen

  • So erstellen Sie eine Veröffentlichung aus einer Oracle-Datenbank mit:

    SQL Server Management Studio

    Transact-SQL

Vorbereitungen

Voraussetzungen

  • Voraussetzung für das Erstellen einer Veröffentlichung aus einer Oracle-Datenbank ist, dass die Oracle-Software auf dem Microsoft SQL Server-Verteiler installiert ist und die Oracle-Datenbank konfiguriert wurde. Weitere Informationen finden Sie unter Konfigurieren eines Oracle-Verlegers.

Pfeilsymbol, dass mit dem Link "Zurück zum Anfang" verwendet wird[Top]

Verwendung von SQL Server Management Studio

Sie können mithilfe des Assistenten für neue Veröffentlichung eine Momentaufnahme- bzw. eine Transaktionsveröffentlichung aus einer Oracle-Datenbank erstellen.

Wenn Sie zum ersten Mal eine Veröffentlichung aus einer Oracle-Datenbank erstellen, müssen Sie den Oracle-Verleger auf dem SQL Server-Verteiler identifizieren (für nachfolgende Veröffentlichungen aus derselben Datenbank ist dies nicht mehr erforderlich). Der Oracle-Verleger kann über den Assistenten für neue Veröffentlichung oder das Dialogfeld Verteilereigenschaften - <Verleger> identifiziert werden. Im Folgenden wird das Identifizieren anhand der Vorgehensweise im Dialogfeld Verteilereigenschaften - <Verteiler> beschrieben.

So identifizieren Sie den Oracle-Verleger auf dem SQL Server-Verteiler

  1. Stellen Sie in SQL Server Management Studio eine Verbindung mit der SQL Server-Instanz her, die der Oracle-Verleger als Verteiler verwenden wird. Erweitern Sie dann den Serverknoten.

  2. Klicken Sie mit der rechten Maustaste auf den Ordner Replikation, und klicken Sie dann auf Verteilereigenschaften.

  3. Klicken Sie auf der Seite Verleger des Dialogfelds Verteilereigenschaften - <Verteiler> auf Hinzufügen und anschließend auf Oracle-Verleger hinzufügen.

  4. Klicken Sie im Dialogfeld Verbindung mit Server herstellen auf die Schaltfläche Optionen.

  5. Gehen Sie auf der Registerkarte Anmeldung wie folgt vor:

    1. Geben Sie den Namen der Oracle-Datenbankinstanz ein, oder wählen Sie im Kombinationsfeld Serverinstanz den Eintrag Suche fortsetzen aus.

    2. Wählen Sie Oracle-Standardauthentifizierung (empfohlen) bzw. Windows-Authentifizierung aus.

      Wenn Sie die Windows-Authentifizierung wählen: Der Oracle-Server muss so konfiguriert werden, dass Verbindungen mithilfe von Windows-Anmeldeinformationen möglich sind (weitere Informationen dazu finden Sie in der Oracle-Dokumentation). Darüber hinaus müssen Sie aktuell mit demselben Microsoft Windows-Konto angemeldet sein, das Sie für das Schema des administrativen Replikationsbenutzers angegeben haben.

    3. Wenn Sie sich für Oracle-Standardauthentifizierung entschieden haben, geben Sie den Anmeldenamen und das Kennwort für das Schema für den administrativen Replikationsbenutzer ein, das Sie beim Konfigurieren auf dem Oracle-Verleger erstellt haben.

  6. Wählen Sie auf der Registerkarte Verbindungseigenschaften als Verlegertyp Gateway oder Vollständig aus.

    Bei Verwendung der Option Vollständig werden Momentaufnahme- und Transaktionsveröffentlichungen mit dem vollständigen Satz der unterstützten Funktionen für das Veröffentlichen mit Oracle bereitgestellt. Die Option Gateway bietet spezifische Entwurfsoptimierungen für die Verbesserung der Leistung für den Fall, dass die Replikation als Gateway zwischen Systemen fungiert. Die Option Gateway kann nicht verwendet werden, wenn Sie beabsichtigen, ein und dieselbe Tabelle in mehreren Transaktionsveröffentlichungen zu veröffentlichen. Bei Verwendung der Option Gateway kann eine Tabelle maximal in einer Transaktionsveröffentlichung, aber in einer beliebigen Anzahl von Momentaufnahmeveröffentlichungen angezeigt werden.

  7. Klicken Sie auf Verbinden. Es wird eine Verbindung mit dem Oracle-Verleger hergestellt, und die Verbindung wird für die Replikation konfiguriert. Das Dialogfeld Verbindung mit Server herstellen wird geschlossen, und das Dialogfeld Verteilereigenschaften - <Verteiler> wird wieder angezeigt.

    HinweisHinweis

    Falls bei der Netzwerkkonfiguration Probleme auftreten, wird jetzt eine Fehlermeldung angezeigt. Wenn Sie Probleme haben, eine Verbindung mit der Oracle-Datenbank herzustellen, finden Sie entsprechende Informationen in dem Abschnitt in Problembehandlung bei Oracle-Verlegern, der sich mit Verbindungsproblemen zwischen dem SQL Server-Verteiler und der Oracle-Datenbankinstanz beschäftigt.

  8. Klicken Sie auf OK.

So erstellen Sie eine Veröffentlichung aus einer Oracle-Datenbank

  1. Stellen Sie eine Verbindung mit der SQL Server-Instanz her, die der Oracle-Verleger als Verteiler verwenden wird. Erweitern Sie dann den Serverknoten.

  2. Erweitern Sie den Ordner Replikation.

  3. Klicken Sie mit der rechten Maustaste auf den Ordner Lokale Veröffentlichungen, und klicken Sie dann auf Neue Oracle-Veröffentlichung.

  4. Wählen Sie auf der Seite Oracle-Verleger des Assistenten für neue Veröffentlichung den Oracle-Verleger aus. Wenn der Oracle-Verleger nicht angezeigt wird, klicken Sie auf Oracle-Verleger hinzufügen. Führen Sie dann die in der vorherigen Prozedur beschriebenen Schritte aus.

  5. Wählen Sie auf der Seite Veröffentlichungstyp entweder Momentaufnahmeveröffentlichung oder Transaktionsveröffentlichung aus.

  6. Wählen Sie auf der Seite Artikel die Datenbankobjekte aus, die Sie veröffentlichen möchten.

    Optional können Sie auch Tabellenspalten herausfiltern, indem Sie eine Tabelle erweitern und dann die Kontrollkästchen für die Spalten deaktivieren, die nicht einbezogen werden sollen. Klicken Sie auf Artikeleigenschaften, um die Artikeleigenschaften anzuzeigen und zu ändern und um bei Bedarf alternative Datentypzuordnungen anzugeben. Weitere Informationen zu Datentypzuordnungen finden Sie unter Angeben von Datentypzuordnungen für einen Oracle-Verleger.

  7. Wenden Sie bei Bedarf auf der Seite Tabellenzeilen filtern Filter an, um nur bestimmte Daten aus einer oder mehreren Tabellen zu veröffentlichen.

  8. Deaktivieren Sie auf der Seite Momentaufnahme-Agent nur dann die Option Momentaufnahme sofort erstellen, wenn Sie alle Objekte erstellt und alle erforderlichen Daten der Abonnementdatenbank hinzugefügt haben.

  9. Geben Sie auf der Seite Agentsicherheit die Anmeldeinformationen für den Momentaufnahme-Agent (für alle Veröffentlichungen) und den Protokolllese-Agent (für Transaktionsveröffentlichungen) an. Die Agents werden ausgeführt und stellen mithilfe des von Ihnen angegebenen Microsoft Windows-Kontos Verbindungen zum SQL Server-Verteiler her. Für die Verbindungen zur Oracle-Datenbank verwenden die Agents den Kontext des Kontos, das Sie als Schema für den administrativen Replikationsbenutzer angegeben haben. Weitere Informationen finden Sie unter Konfigurieren eines Oracle-Verlegers.

    Weitere Informationen zu den erforderlichen Berechtigungen für die einzelnen Agents finden Sie unter Sicherheitsmodell des Replikations-Agents und Bewährte Methoden für die Replikationssicherheit.

  10. Erstellen Sie optional auf der Seite Aktionen des Assistenten ein Skript für die Veröffentlichung. Weitere Informationen finden Sie unter Erstellen von Skripts für die Replikation.

  11. Geben Sie auf der Seite Assistenten abschließen einen Namen für die Veröffentlichung an.

Pfeilsymbol, dass mit dem Link "Zurück zum Anfang" verwendet wird[Top]

Verwendung von Transact-SQL

Nachdem eine Oracle-Datenbank als Verleger konfiguriert wurde, können Sie mit gespeicherten Systemprozeduren auf die gleiche Weise wie bei Verwendung eines Microsoft SQL Server-Verlegers eine Transaktions- oder Momentaufnahmeveröffentlichung erstellen.

So erstellen Sie eine Oracle-Veröffentlichung

  1. Konfigurieren Sie die Oracle-Datenbank als Verleger. Weitere Informationen finden Sie unter Konfigurieren eines Oracle-Verlegers.

  2. Wenn kein Remoteverteiler vorhanden ist, konfigurieren Sie den Remoteverteiler. Weitere Informationen finden Sie unter Konfigurieren der Veröffentlichung und der Verteilung.

  3. Führen Sie auf dem Remoteverteiler, der vom Oracle-Verleger verwendet wird, sp_adddistpublisher (Transact-SQL) aus. Geben Sie den Transparent Network Substrate (TNS)-Namen der Oracle-Datenbankinstanz für @publisher und einen Wert von ORACLE oder ORACLE GATEWAY für @publisher_type an. Specify : Geben Sie den beim Herstellen der Verbindung vom Oracle-Verleger zum Remote-SQL Server-Verteiler verwendeten Sicherheitsmodus auf eine der folgenden Arten an:

    • Um die Standardeinstellung Oracle-Standardauthentifizierung zu verwenden, geben Sie den Wert 0 für @security_mode, den Anmeldenamen für das Schema des administrativen Replikationsbenutzers, das Sie während der Konfiguration auf dem Oracle-Verleger erstellt haben, für @login und das Kennwort für @password an.

      SicherheitshinweisSicherheitshinweis

      Benutzer sollten nach Möglichkeit dazu aufgefordert werden, Anmeldeinformationen zur Laufzeit einzugeben. Wenn Sie Anmeldeinformationen in einer Skriptdatei speichern, müssen Sie die Datei schützen, um unberechtigtem Zugriff vorzubeugen.

    • Um die Windows-Authentifizierung zu verwenden, geben Sie den Wert 1 für @ security_mode an.

      HinweisHinweis

      Für die Verwendung der Windows-Authentifizierung muss der Oracle-Server so konfiguriert werden, dass Verbindungen mithilfe von Windows-Anmeldeinformationen möglich sind (weitere Informationen dazu finden Sie in der Oracle-Dokumentation). Darüber hinaus müssen Sie aktuell mit demselben Microsoft Windows-Konto angemeldet sein, das Sie für das Schema für den administrativen Replikationsbenutzer angegeben haben.

  4. Erstellen Sie einen Protokolllese-Agentauftrag für die Veröffentlichungsdatenbank.

    • Wenn Sie sich nicht sicher sind, ob ein Protokolllese-Agentauftrag für die Veröffentlichungsdatenbank vorhanden ist, dann führen Sie sp_helplogreader_agent (Transact-SQL) auf dem vom Oracle-Verleger verwendeten Verteiler für die Verteilerdatenbank aus. Geben Sie den Namen des Oracle-Verlegers für @publisher an. Wenn das Resultset leer ist, muss ein Protokolllese-Agentauftrag erstellt werden.

    • Wenn ein Protokolllese-Agentauftrag für die Veröffentlichungsdatenbank bereits vorhanden ist, fahren Sie mit Schritt 5 fort.

    • Führen Sie dem vom Oracle-Verleger verwendeten Verteiler für die Verteilungsdatenbank sp_addlogreader_agent (Transact-SQL) aus. Geben Sie die Windows-Anmeldeinformationen , unter denen der Agent ausgeführt wird, für @job_login und @job_password an.

      HinweisHinweis

      Der @job_login-Parameter muss mit den in Schritt 3 angegebenen Anmeldeinformationen übereinstimmen. Geben Sie keine Sicherheitsinformationen zum Verleger an. Der Protokolllese-Agent stellt mit den in Schritt 3 bereitgestellten Sicherheitsinformationen eine Verbindung mit dem Verleger her.

  5. Führen Sie auf dem Verteiler für die Verteilerdatenbank sp_addpublication (Transact-SQL) aus, um die Veröffentlichung zu erstellen. Weitere Informationen finden Sie unter Erstellen einer Veröffentlichung.

  6. Führen Sie auf dem Verteiler für die Verteilungsdatenbank sp_addpublication_snapshot (Transact-SQL) aus. Geben Sie den in Schritt 4 für @publication verwendeten Veröffentlichungsnamen und die Windows-Anmeldeinformationen, unter denen der Momentaufnahme-Agent ausgeführt wird, für @job_name und @job_password an. Wenn zum Herstellen der Verbindung mit dem Verleger die Oracle-Standardauthentifizierung verwendet werden soll, müssen Sie außerdem den Wert 0 für @publisher_security_mode und die Oracle-Anmeldeinformationen für @publisher_login und @publisher_password angeben. Dadurch wird ein Momentaufnahme-Agentauftrag für die Veröffentlichung erstellt.

Pfeilsymbol, dass mit dem Link "Zurück zum Anfang" verwendet wird[Top]

Siehe auch

Aufgaben

Konfigurieren des Transaktionssatz-Auftrags für einen Oracle-Verleger (Replikationsprogrammierung mit Transact-SQL)

Konzepte

Konfigurieren eines Oracle-Verlegers

Veröffentlichen von Daten und Datenbankobjekten

Veröffentlichungen mit Oracle (Übersicht)

Skript zum Erteilen von Oracle-Berechtigungen