sp_mergemetadataretentioncleanup (Transact-SQL)

Выполняет неавтоматическую очистку метаданных в системных таблицах MSmerge_genhistory, MSmerge_contents, MSmerge_tombstone, MSmerge_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) на издателе и обратите внимание на любые публикации в результирующем наборе, для которых используется значение 0 параметра retention.

Разрешения

Только члены предопределенной роли базы данных db_owner или пользователи, перечисленные в списке доступа публикации для опубликованной базы данных, могут выполнять процедуру sp_mergemetadataretentioncleanup.