Freigeben über


sp_mergemetadataretentioncleanup (Transact-SQL)

Gilt für: SQL Server

Führt eine manuelle Bereinigung von Metadaten in den Systemtabellen MSmerge_genhistory, MSmerge_contents, MSmerge_tombstone, MSmerge_past_partition_mappings und MSmerge_current_partition_mappings aus. Diese gespeicherte Prozedur wird auf jedem Verleger und Abonnenten in der Topologie durchgeführt.

Transact-SQL-Syntaxkonventionen

Syntax

sp_mergemetadataretentioncleanup
    [ [ @num_genhistory_rows = ] num_genhistory_rows OUTPUT ]
    [ , [ @num_contents_rows = ] num_contents_rows OUTPUT ]
    [ , [ @num_tombstone_rows = ] num_tombstone_rows OUTPUT ]
    [ , [ @aggressive_cleanup_only = ] aggressive_cleanup_only ]
[ ; ]

Argumente

[ @num_genhistory_rows = ] num_genhistory_rows OUTPUT

Gibt die Anzahl der bereinigten Zeilen aus der MSmerge_genhistory Tabelle zurück. @num_genhistory_rows ist ein OUTPUT-Parameter vom Typ "int" mit einem Standardwert von 0.

[ @num_contents_rows = ] num_contents_rows OUTPUT

Gibt die Anzahl der bereinigten Zeilen aus der MSmerge_contents Tabelle zurück. @num_contents_rows ist ein OUTPUT-Parameter vom Typ "int" mit einem Standardwert von0

[ @num_tombstone_rows = ] num_tombstone_rows OUTPUT

Gibt die Anzahl der bereinigten Zeilen aus der MSmerge_tombstone Tabelle zurück. @num_tombstone_rows ist ein OUTPUT-Parameter vom Typ "int" mit einem Standardwert von 0.

[ @aggressive_cleanup_only = ] aggressive_cleanup_only

Nur für Informationszwecke identifiziert. Wird nicht unterstützt. Zukünftige Kompatibilität wird nicht sichergestellt.

Rückgabecodewerte

0 (erfolgreich) oder 1 Fehler.

Hinweise

Wenn mehrere Publikationen in einer Datenbank vorhanden sind und eine dieser Publikationen einen unbegrenzten Aufbewahrungszeitraum für Publikationen verwendet, bereinigt die Ausführung sp_mergemetadataretentioncleanup nicht die Metadaten der Serienreplikationsänderungsnachverfolgung für die Datenbank. Aus diesem Grund sollten Sie die unbegrenzte Aufbewahrungsdauer für Veröffentlichungen mit Vorsicht verwenden. Um zu ermitteln, ob eine Publikation über einen unendlichen Aufbewahrungszeitraum verfügt, führen Sie sp_helpmergepublication (Transact-SQL) im Publisher aus, und notieren Sie alle Publikationen im Resultset mit dem Wert für 0 retention.

Berechtigungen

Nur Mitglieder der db_owner festen Datenbankrolle oder Benutzer in der Publikationszugriffsliste für eine veröffentlichte Datenbank können ausgeführt werden sp_mergemetadataretentioncleanup.