次の方法で共有


sp_mergemetadataretentioncleanup (Transact-SQL)

MSmerge_genhistoryMSmerge_contentsMSmerge_tombstoneMSmerge_past_partition_mappings、および MSmerge_current_partition_mappings の各システム テーブル内にあるメタデータの手動クリーンアップを実行します。 このストアド プロシージャは、トポロジ内の各パブリッシャーおよびサブスクライバーで実行されます。

トピック リンク アイコン Transact-SQL 構文表記規則

構文

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 ]

引数

  • [ @num_genhistory_rows= ] num_genhistory_rows OUTPUT
    MSmerge_genhistory テーブルからクリーンアップされた行数を返します。 num_genhistory_rows のデータ型は int で、既定値は 0 です。

  • [ @num_contents_rows= ] num_contents_rows OUTPUT
    MSmerge_contents テーブルからクリーンアップされた行数を返します。 num_contents_rows のデータ型は int で、既定値は 0 です。

  • [ @num_tombstone_rows= ] num_tombstone_rows OUTPUT
    MSmerge_tombstone テーブルからクリーンアップされた行数を返します。 num_tombstone_rows のデータ型は int で、既定値は 0 です。

  • [ @aggressive_cleanup_only= ] aggressive_cleanup_only
    内部でのみ使用されます。

リターン コードの値

0 (成功) または 1 (失敗)

説明

重要な注意事項重要

データベースに複数のパブリケーションが存在し、それらのパブリケーションのいずれかが無期限のパブリケーション保有期間を使用している場合、sp_mergemetadataretentioncleanup を実行しても、マージ レプリケーションでのデータベース用メタデータの変更の追跡はクリーンアップされません。 このため、無期限のパブリケーション保有期間は注意して使用してください。 パブリケーションに無期限の保有期間があるかどうかを判定するには、パブリッシャー側で sp_helpmergepublication (Transact-SQL) を実行し、retention の値が 0 の結果セットのパブリケーションに注意してください。

権限

sp_mergemetadataretentioncleanup を実行できるのは、固定データベース ロール db_owner のメンバーまたはパブリッシュされたデータベースのパブリケーション アクセス リストのユーザーだけです。

関連項目

参照

システム ストアド プロシージャ (Transact-SQL)