Share via


Initialisieren eines Transaktionsabonnements von einer Sicherung (Replikationsprogrammierung mit Transact-SQL)

Obwohl ein Abonnement für eine Transaktionsveröffentlichung in der Regel mit einer Momentaufnahme initialisiert wird, kann ein Abonnement auch mit gespeicherten Replikationsprozeduren von einer Sicherung initialisiert werden. Weitere Informationen finden Sie unter Initialize a Transactional Subscription Without a Snapshotinitialisiert wird.

So initialisieren Sie einen Transaktionsabonnenten von einer Sicherung

  1. Stellen Sie bei einer vorhandenen Veröffentlichung sicher, dass die Veröffentlichung die Möglichkeit zur Initialisierung aus der Sicherung unterstützt, indem Sie sp_helppublication (Transact-SQL) auf dem Verleger in der Veröffentlichungsdatenbank ausführen. Notieren Sie den Wert von allow_initialize_from_backup im Resultset.

    • Wenn der Wert 1ist, unterstützt die Veröffentlichung diese Funktionalität.

    • Wenn der Wert 0 ist, führen Sie sp_changepublication (Transact-SQL) auf dem Verleger in der Veröffentlichungsdatenbank aus. Geben Sie den Wert allow_initialize_from_backup für @property und den Wert für true@value an.

  2. Führen Sie für eine neue Veröffentlichung sp_addpublication (Transact-SQL) auf dem Verleger in der Veröffentlichungsdatenbank aus. Geben Sie den Wert für trueallow_initialize_from_backup an. Weitere Informationen finden Sie unter Create a Publication.

    Warnung

    Um fehlende Abonnentendaten zu vermeiden, wenn Sie sp_addpublication mit @allow_initialize_from_backup = N'true'verwenden, sollten Sie immer @immediate_sync = N'true'verwenden.

  3. Erstellen Sie mithilfe der BACKUP-Anweisung (Transact-SQL) eine Sicherung der Veröffentlichungsdatenbank.

  4. Stellen Sie die Sicherung auf dem Abonnenten mithilfe der RESTORE -Anweisung (Transact-SQL) wieder her.

  5. Führen Sie auf dem Verleger in der Veröffentlichungsdatenbank die gespeicherte Prozedur sp_addsubscription (Transact-SQL) aus. Geben Sie die folgenden Parameter an:

    • @sync_type – der Wert initialize with backup.

    • @backupdevicetype – der Typ des Sicherungsmediums: logical (Standard), diskoder tape.

    • @backupdevicename – das logische oder physische Sicherungsmedium, das für den Wiederherstellungsvorgang verwendet wird.

      Für ein logisches Gerät geben Sie den Namen des Sicherungsmediums an, der beim Erstellen des Geräts mit sp_addumpdevice festgelegt wurde.

      Geben Sie für ein physisches Gerät einen vollständigen Pfad und einen Dateinamen an, z. B. DISK = 'C:\Program Files\Microsoft SQL Server\MSSQL12.MSSQLSERVER\BACKUP\Mybackup.dat' oder TAPE = '\\.\TAPE0'.

    • (Optional) @password – ein Kennwort, das bereitgestellt wurde, als der Sicherungssatz erstellt wurde.

    • (Optional) @mediapassword – ein Kennwort, das bereitgestellt wurde, als der Mediensatz formatiert wurde.

    • (Optional) @fileidhint – Bezeichner für den Sicherungssatz, der wiederhergestellt werden soll. 1 gibt z. B. den ersten Sicherungssatz auf dem Sicherungsmedium an und 2 den zweiten Sicherungssatz.

    • (Optional für Bandmedien) @unload – Geben Sie den Wert 1 (Standardwert) an, wenn das Band nach Abschluss der Wiederherstellung aus dem Laufwerk ausgegeben werden soll, und 0 , wenn es nicht ausgegeben werden soll.

  6. (Optional) Führen Sie bei einem Pullabonnement sp_addpullsubscription (Transact-SQL) und sp_addpullsubscription_agent (Transact-SQL) auf dem Abonnenten in der Abonnementdatenbank aus. Weitere Informationen finden Sie unter Create a Pull Subscription.

  7. (Optional) Starten Sie den Verteilungs-Agent. Weitere Informationen finden Sie unter Synchronize a Pull Subscription oder Synchronize a Push Subscription.

Weitere Informationen

Kopieren von Datenbanken durch Sichern und Wiederherstellen
Sichern und Wiederherstellen von SQL Server-Datenbanken