sp_mergemetadataretentioncleanup (Transact-SQL)
MSmerge_genhistory、MSmerge_contents、MSmerge_tombstone、MSmerge_past_partition_mappings、および MSmerge_current_partition_mappings の各システム テーブル内にあるメタデータの手動クリーンアップを実行します。 このストアド プロシージャは、トポロジ内の各パブリッシャーおよびサブスクライバーで実行されます。
構文
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 のメンバーまたはパブリッシュされたデータベースのパブリケーション アクセス リストのユーザーだけです。