Vorgehensweise: 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 Initialisieren eines Transaktionsabonnements ohne Snapshot.

So initialisieren Sie einen Transaktionsabonnenten von einer Sicherung

  1. Stellen Sie bei einer bestehenden Veröffentlichung sicher, dass die Veröffentlichung die Fähigkeit unterstützt, von einer Sicherung initialisieren zu können. Führen Sie dazu sp_helppublication (Transact-SQL) auf dem Verleger für die Veröffentlichungsdatenbank aus. Notieren Sie den Wert von allow_initialize_from_backup im Resultset.

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

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

  2. Bei einer neuen Veröffentlichung führen Sie sp_addpublication (Transact-SQL) auf dem Verleger für die Veröffentlichungsdatenbank aus. Geben Sie den Wert true für allow_initialize_from_backup an. Weitere Informationen finden Sie unter Vorgehensweise: Erstellen einer Veröffentlichung (Replikationsprogrammierung mit Transact-SQL).

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

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

  5. Führen Sie auf dem Verleger für die 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), disk oder 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\MSSQL10_50.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 für ein Pullabonnement sp_addpullsubscription (Transact-SQL) und sp_addpullsubscription_agent (Transact-SQL) auf dem Abonnenten für die Abonnementdatenbank aus. Weitere Informationen finden Sie unter Vorgehensweise: Erstellen eines Pullabonnements (Replikationsprogrammierung mit Transact-SQL).

  7. (Optional) Starten Sie den Verteilungs-Agent. Weitere Informationen finden Sie unter Vorgehensweise: Synchronisieren eines Pullabonnements (Replikationsprogrammierung) oder Vorgehensweise: Synchronisieren eines Pushabonnements (Replikationsprogrammierung).