Share via


sp_copysubscription (Transact-SQL)

Wichtiger HinweisWichtig

Die Funktion für anfügbare Abonnements ist als veraltet markiert und wird in einer zukünftigen Version entfernt. Diese Funktion sollte bei neuen Entwicklungen nicht verwendet werden. Für Mergeveröffentlichungen, die mithilfe von parametrisierten Filtern partitioniert werden, ist es empfehlenswert, die neuen Funktionen von partitionierten Momentaufnahmen zu verwenden. Diese vereinfachen die Initialisierung zahlreicher Abonnements. Weitere Informationen finden Sie unter Momentaufnahmen für Mergeveröffentlichungen mit parametrisierten Filtern. Für nicht partitionierte Veröffentlichungen können Sie ein Abonnement mit einer Sicherung initialisieren. Weitere Informationen finden Sie unter Initialisieren eines Transaktionsabonnements ohne Momentaufnahme.

Kopiert eine Abonnementdatenbank, die über Pullabonnements, nicht jedoch über Pushabonnements verfügt. Es können nur einzelne Dateidatenbanken kopiert werden. Diese gespeicherte Prozedur wird auf dem Abonnenten für die Abonnementdatenbank ausgeführt.

Themenlink (Symbol) Transact-SQL-Syntaxkonventionen

Syntax

sp_copysubscription [ @filename = ] 'file_name'
    [ , [ @temp_dir = ] 'temp_dir' ]
    [ , [ @overwrite_existing_file = ] overwrite_existing_file]

Argumente

  • [ @filename =] 'file_name'
    Der Zeichenfolgenwert, der den vollständigen Pfad einschließlich des Dateinamens angibt, in dem eine Kopie der Datendatei (.mdf) gespeichert wird. file name ist vom Datentyp nvarchar(260) und hat keinen Standardwert.

  • [ @temp_dir=] 'temp_dir'
    Der Name des Verzeichnisses, das die temporären Dateien enthält. temp_dir ist vom Datentyp nvarchar(260) und hat den Standardwert NULL. Bei NULL wird das Microsoft SQL Server-Standarddatenverzeichnis verwendet. Das Verzeichnis sollte über ausreichenden Speicherplatz verfügen, um eine Datei aufzunehmen, die der Größe aller Datenbankdateien auf dem Abonnenten zusammen entspricht.

  • [ @overwrite_existing_file=] 'overwrite_existing_file'
    Ein optionales boolesches Flag, das angibt, ob eine vorhandene Datei mit dem gleichen Namen (im @filename angegeben) überschrieben werden soll. overwrite_existing_fileist vom Datentyp bit. Der Standardwert ist 0. Bei 1 wird die durch @filename angegebene Datei überschrieben, falls sie vorhanden ist. Bei 0 schlägt die gespeicherte Prozedur fehl, falls die Datei vorhanden ist, und die Datei wird nicht überschrieben.

Rückgabecodewerte

0 (Erfolg) oder 1 (Fehler)

Hinweise

sp_copysubscription wird bei allen Replikationstypen zum Kopieren einer Abonnementdatenbank in eine Datei als Alternative zum Anwenden einer Momentaufnahme auf den Abonnenten verwendet. Die Datenbank muss so konfiguriert sein, dass ausschließlich Pullabonnements unterstützt werden. Benutzer mit entsprechenden Berechtigungen können Kopien der Abonnementdatenbank erstellen und die Abonnementdatei (MSF) dann per E-Mail, durch Kopieren oder Übertragen an einen anderen Abonnenten senden. Dort kann die Datei dann als Abonnement angefügt werden.

Die Größe der kopierten Abonnementdatenbank muss weniger als 2 Gigabyte (GB) betragen.

sp_copysubscription wird nur für Datenbanken mit Clientabonnements unterstützt und kann nicht ausgeführt werden, wenn die Datenbank Serverabonnements hat.

Berechtigungen

Nur Mitglieder der festen Serverrolle sysadmin können sp_copysubscription ausführen.

Siehe auch

Verweis

Gespeicherte Systemprozeduren (Transact-SQL)

Konzepte

Alternative Speicherorte für Momentaufnahmeordner