Transaktionsreplikation von der SQL Azure-Datenbank auf den lokalen SQL Server

Ich habe einen Anwendungsfall, in dem ich eine lokale SQL Server-Datenbank synchron halten muss mit meiner Azure SQL-Datenbank.

Gibt es eine Möglichkeit, die Replikation / Synchronisierung von der Azure SQL-Datenbank zur lokalen Datenbank einzurichten?

Kommentare

Antwort

Die folgende Liste von Artikeln enthält möglicherweise Informationen Geben Sie ausreichende Informationen an, damit Sie eine Azure SQL-Datensynchronisierung :

SQL Data Sync ist ein auf Azure SQL Database basierender Dienst, mit dem Sie die von Ihnen ausgewählten Daten bidirektional über mehrere SQL-Datenbanken und SQL Server-Instanzen hinweg synchronisieren können.

( Hervorhebung mine)

In diesem Tutorial Sie erfahren, wie Sie die Azure SQL-Datensynchronisierung einrichten, indem Sie eine hybride Synchronisierungsgruppe erstellen, die beide enthält Azure SQL-Datenbank- und SQL Server-Instanzen . Die neue Synchronisierungsgruppe ist vollständig konfiguriert und wird nach dem von Ihnen festgelegten Zeitplan synchronisiert.
[…]

Hinzufügen einer Azure SQL-Datenbank

Fügen Sie im Abschnitt Mitgliedsdatenbank optional hinzu eine Azure SQL-Datenbank zur Synchronisierungsgruppe, indem Sie Azure-Datenbank hinzufügen auswählen. Die Seite „Azure-Datenbank konfigurieren“ wird geöffnet.

Führen Sie auf der Seite „Azure-Datenbank konfigurieren“ die folgenden Schritte aus:

  1. Geben Sie im Feld Name des Synchronisierungsmitglieds einen Namen für ein das neue Synchronisierungsmitglied. Dieser Name unterscheidet sich vom Namen der Datenbank selbst.

  2. Wählen Sie im Feld Abonnement das zugehörige Azure-Abonnement für Abrechnungszwecke aus.

  3. Wählen Sie im Feld Azure SQL Server den vorhandenen SQL-Datenbankserver aus.

  4. Wählen Sie im Feld Azure SQL-Datenbank die vorhandene SQL-Datenbank aus.

  5. Wählen Sie im Feld Anweisungen synchronisieren die Option Bidirektionale Synchronisierung, Zum Hub oder Vom Hub aus aus.

  6. In den Feldern Benutzername und Kennwort Geben Sie die vorhandenen Anmeldeinformationen für den SQL-Datenbankserver ein, auf dem sich die Mitgliedsdatenbank befindet. Geben Sie in diesem Abschnitt keine neuen Anmeldeinformationen ein.

  7. Wählen Sie OK und warten Sie, bis das neue Synchronisierungsmitglied erstellt und bereitgestellt wurde.

Hinzufügen einer lokalen SQL Server-Datenbank

Fügen Sie im Abschnitt „Mitgliederdatenbank“ optional einen lokalen SQL Server zur Synchronisierungsgruppe hinzu, indem Sie „Lokale Datenbank hinzufügen“ auswählen. Die Seite „Räumlichkeiten“ wird geöffnet.

Führen Sie auf der Seite „Lokale Räumlichkeiten konfigurieren“ die folgenden Schritte aus:

  1. Wählen Sie „Sync Agent Gateway auswählen“. Die Seite „Sync Agent auswählen“ wird geöffnet

  2. Wählen Sie auf der Seite Sync Agent Gateway auswählen aus, ob ein vorhandener Agent verwendet oder ein neuer Agent erstellt werden soll.

    Wenn Sie Vorhandene Agenten ausgewählt haben, Wählen Sie den vorhandenen Agenten aus der Liste aus.

    Wenn Sie Neuen Agenten erstellen ausgewählt haben, gehen Sie folgendermaßen vor:

    a. Laden Sie die Client-Synchronisierungsagenten-Software über den angegebenen Link herunter und installieren Sie sie auf dem Computer, auf dem sich der SQL Server befindet.

    Wichtig

Sie müssen den ausgehenden TCP-Port 1433 in der Firewall öffnen, damit der Client-Agent mit dem Server kommunizieren kann.

b. Geben Sie einen Namen für den Agenten ein.

c. Wählen Sie Schlüssel erstellen und generieren.

d. Kopieren Sie den Agentenschlüssel in die Zwischenablage.

e. Wählen Sie OK, um die Seite Select Sync Agent zu schließen.

f. Suchen Sie auf dem SQL Server-Computer die Client Sync Agent-App und führen Sie sie aus.

g. Wählen Sie in der Sync Agent-App die Option Agent Key senden aus. Das Dialogfeld Konfiguration der Metadaten-Datenbank synchronisieren wird geöffnet.

h. Fügen Sie im Dialogfeld Konfiguration der Metadatendatenbank synchronisieren den vom Azure-Portal kopierten Agentenschlüssel ein. Geben Sie auch die vorhandenen Anmeldeinformationen für den Azure SQL-Datenbankserver an, auf dem sich die Metadatendatenbank befindet. (Wenn Sie eine neue Metadatendatenbank erstellt haben, befindet sich diese Datenbank auf demselben Server wie die Hub-Datenbank.) Wählen Sie OK und warten Sie, bis die Konfiguration abgeschlossen ist.

Hinweis Wenn an dieser Stelle ein Firewall-Fehler auftritt, müssen Sie in Azure eine Firewall-Regel erstellen, um eingehenden Datenverkehr von zuzulassen der SQL Server-Computer.Sie können die Regel manuell im Portal erstellen, es ist jedoch möglicherweise einfacher, sie in SQL Server Management Studio (SSMS) zu erstellen. Versuchen Sie in SSMS, eine Verbindung zur Hub-Datenbank in Azure herzustellen. Geben Sie den Namen als <hub_database_name>.database.windows.net ein. Führen Sie die folgenden Schritte aus, um die Azure-Firewall-Regel zu konfigurieren. Kehren Sie dann zur Client Sync Agent-App zurück.

i. Klicken Sie in der Client Sync Agent-App auf Registrieren, um eine SQL Server-Datenbank beim Agenten zu registrieren. Das Dialogfeld SQL Server-Konfiguration wird geöffnet. j. Wählen Sie im Dialogfeld SQL Server-Konfiguration aus, ob eine Verbindung mithilfe der SQL Server-Authentifizierung oder der Windows-Authentifizierung hergestellt werden soll. Wenn Sie die SQL Server-Authentifizierung ausgewählt haben, geben Sie die vorhandenen Anmeldeinformationen ein. Geben Sie den SQL Server-Namen und den Namen der Datenbank an, die Sie synchronisieren möchten. Wählen Sie Verbindung testen, um Ihre Einstellungen zu testen. Wählen Sie dann Speichern. Die registrierte Datenbank wird in der Liste angezeigt.

k. Sie können jetzt die Client Sync Agent-App schließen.

l. Wählen Sie im Portal auf der Seite Lokale konfigurieren die Option Datenbank auswählen aus. Die Seite Datenbank auswählen wird geöffnet.

m. Geben Sie auf der Seite Datenbank auswählen im Feld Name des Synchronisierungsmitglieds einen Namen für das neue Synchronisierungsmitglied ein. Dieser Name unterscheidet sich vom Namen der Datenbank selbst. Wählen Sie die Datenbank aus der Liste aus. Wählen Sie im Feld Richtungen synchronisieren die Option Bidirektionale Synchronisierung, Zum Hub oder Vom Hub aus aus.

n. Wählen Sie OK, um die Seite Datenbank auswählen zu schließen. Wählen Sie dann OK, um die Seite Configure On Premises zu schließen, und warten Sie, bis das neue Synchronisierungsmitglied erstellt und bereitgestellt wurde. Klicken Sie abschließend auf OK, um die Seite Synchronisierungsmitglieder auswählen zu schließen.

  • Um eine Verbindung zu SQL Data Sync und dem lokalen Agenten herzustellen, fügen Sie Ihren Benutzernamen zur Rolle DataSync_Executor hinzu. Data Sync erstellt diese Rolle auf der SQL Server-Instanz.

  • Schritt 3 – Konfigurieren der Synchronisierungsgruppe

    Nachdem die neuen Mitglieder der Synchronisierungsgruppe erstellt und bereitgestellt wurden, Schritt 3, Konfigurationsgruppe konfigurieren, wird auf der Seite Neue Synchronisierungsgruppe hervorgehoben.

    1. Wählen Sie auf der Seite Tabellen eine Datenbank aus der Liste der Mitglieder der Synchronisierungsgruppe aus und wählen Sie dann Schema aktualisieren .

    2. Wählen Sie aus der Liste der verfügbaren Tabellen die Tabellen aus, die Sie synchronisieren möchten.

    3. Standardmäßig alle Spalten in der Tabelle ausgewählt sind. Wenn Sie nicht alle Spalten synchronisieren möchten, deaktivieren Sie das Kontrollkästchen für die Spalten, die Sie nicht synchronisieren möchten. Stellen Sie sicher, dass die Primärschlüsselspalte ausgewählt bleibt.

    4. Wählen Sie abschließend Speichern aus.

    SQL Data Sync ist ein Dienst, der auf der Azure SQL-Datenbank basiert und es Ihnen ermöglicht, die von Ihnen ausgewählten Daten bidirektional über mehrere SQL-Datenbanken und SQL Server-Instanzen hinweg zu synchronisieren.

    Die Datensynchronisierung basiert auf dem Konzept einer Synchronisierungsgruppe. Eine Synchronisierungsgruppe ist eine Gruppe von Datenbanken, die Sie synchronisieren möchten.

    Kommentare

    • Nur Obwohl diese Informationen korrekt sind, habe ich anekdotisch eine erhebliche Anzahl von Problemen mit Azure Data Sync festgestellt, bis wir sie als Lösung für unser Projekt aufgeben mussten. Das heißt, ‚ bedeutet nicht, dass es für das OP nicht ‚ funktionieren würde, nur dass es Fälle gibt, in denen eine Reihe von Triggern hinzugefügt werden Die Datenbank zur Aufrechterhaltung des Status zwischen zwei unabhängigen Servern ist nicht ‚ die beste Lösung.

    Schreibe einen Kommentar

    Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.