sp_mergemetadataretentioncleanup (Transact-SQL)

Führt ein manuelles Cleanup von Metadaten in den Systemtabellen MSmerge_genhistory, MSmerge_contents, MSmerge_tombstone, MSmerge_past_partition_mappings und MSmerge_current_partition_mappings durch. Diese gespeicherte Prozedur wird auf jedem Verleger und Abonnenten in der Topologie durchgeführt.

Themenlink (Symbol)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 Zeilen in der MSmerge_genhistory-Tabelle zurück, für die ein Cleanup durchgeführt wurde. num_genhistory_rows ist vom Datentyp int; der Standardwert ist 0.

  • [ @num_contents_rows= ] num_contents_rows OUTPUT
    Gibt die Anzahl der Zeilen in der MSmerge_contents-Tabelle zurück, für die ein Cleanup durchgeführt wurde. num_contents_rows ist vom Datentyp int; der Standardwert ist 0.

  • [ @num_tombstone_rows= ] num_tombstone_rows OUTPUT
    Gibt die Anzahl der Zeilen in der MSmerge_tombstone-Tabelle zurück, für die ein Cleanup durchgeführt wurde. num_tombstone_rows ist vom Datentyp int; der Standardwert ist 0.

  • [ @aggressive_cleanup_only= ] aggressive_cleanup_only
    Nur interne Verwendung.

Rückgabecodewerte

0 (Erfolg) oder 1 (Fehler)

Hinweise

Weitere Informationen zu Cleanups von Metadaten finden Sie unter Funktionsweise der Mergereplikation.

Wichtiger HinweisWichtig

Falls mehrere Veröffentlichungen in einer Datenbank vorhanden sind und eine dieser Veröffentlichungen eine unbegrenzte Beibehaltungsdauer für Veröffentlichungen verwendet, werden durch Ausführen von sp_mergemetadataretentioncleanup die Metadaten der Änderungsprotokollierung der Mergereplikation für die Datenbank nicht geändert. Daher sollten Sie die unbegrenzte Beibehaltungsdauer für Veröffentlichungen mit Vorsicht verwenden. Um festzustellen, ob eine Veröffentlichung eine unbegrenzte Beibehaltungsdauer besitzt, führen Sie sp_helpmergepublication (Transact-SQL) auf dem Verleger aus. Achten Sie außerdem auf Veröffentlichungen im Resultset, die den Wert 0 für retention aufweisen.

Berechtigungen

Nur Mitglieder der festen Datenbankrolle db_owner oder Benutzer in der Veröffentlichungszugriffsliste für eine veröffentlichte Datenbank können sp_mergemetadataretentioncleanup ausführen.