sp_mergemetadataretentioncleanup (Transact-SQL)
Область применения: SQL Server
Выполняет ручную очистку метаданных в системных таблицах 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 — это параметр OUTPUT типа int с значением по умолчанию0
.
[ @num_contents_rows = ] num_contents_rows OUTPUT
Возвращает количество строк, очищенных из таблицы MSmerge_contents . @num_contents_rows — это параметр OUTPUT типа int с значением по умолчанию0
[ @num_tombstone_rows = ] num_tombstone_rows OUTPUT
Возвращает количество строк, очищенных из таблицы MSmerge_tombstone . @num_tombstone_rows — это параметр OUTPUT типа int с значением по умолчанию0
.
[ @aggressive_cleanup_only = ] aggressive_cleanup_only
Указано только в ознакомительных целях. Не поддерживается. Совместимость с будущими версиями не гарантируется.
Значения кода возврата
0
(успешно) или 1
(сбой).
Замечания
Если в базе данных существует несколько публикаций, и любой из этих публикаций использует бесконечный период хранения публикации, выполнение sp_mergemetadataretentioncleanup
не очищает метаданные отслеживания изменений репликации слиянием для базы данных. По этой причине, при использовании неограниченного срока хранения публикации необходимо помнить об осторожности. Чтобы определить, имеет ли публикация бесконечный период хранения, выполните sp_helpmergepublication на издателе и запишите все публикации в результирующем наборе со значением 0
для retention
.
Разрешения
Могут выполняться sp_mergemetadataretentioncleanup
только члены предопределенных ролей базы данных db_owner или пользователей в списке доступа к публикации для опубликованной базы данных.