Сценарий вывода сведений о распространителе и издателе
Этот сценарий использует системные таблицы и хранимые процедуры репликации, позволяющие получить ответы на часто задаваемые вопросы об объектах на распространителе и издателе. Сценарий может использоваться «как есть», а также может служить основой для пользовательских сценариев. Для выполнения в вашей среде, возможно, потребуется внести в сценарий два изменения:
- Изменить строку
use AdventureWorks
для использования имени вашей базы данных публикации. - Удалить комментарии (
--
) из строкиexec sp_helparticle @publication='<PublicationName>'
и заменить <PublicationName> на имя публикации.
--********** Execute at the Distributor in the master database **********--
use master
go
--Is the current server a Distributor?
--Is the distribution database installed?
--Are there other Publishers using this Distributor?
exec sp_get_distributor
--Is the current server a Distributor?
select is_distributor from sys.servers where name='repl_distributor' and data_source=@@servername
--Which databases on the Distributor are distribution databases?
select name from sys.databases where is_distributor = 1
--What are the Distributor and distribution database properties?
exec sp_helpdistributor
exec sp_helpdistributiondb
exec sp_helpdistpublisher
--********** Execute at the Publisher in the master database **********--
--Which databases are published for replication and what type of replication?
exec sp_helpreplicationdboption
--Which databases are published using snapshot replication or transactional replication?
select name as tran_published_db from sys.databases where is_published = 1
--Which databases are published using merge replication?
select name as merge_published_db from sys.databases where is_merge_published = 1
--What are the properties for Subscribers that subscribe to publications at this Publisher?
exec sp_helpsubscriberinfo
--********** Execute at the Publisher in the publication database **********--
use AdventureWorks
go
--What are the snapshot and transactional publications in this database?
exec sp_helppublication
--What are the articles in snapshot and transactional publications in this database?
--REMOVE COMMENTS FROM NEXT LINE AND REPLACE <PublicationName> with the name of a publication
--exec sp_helparticle @publication='<PublicationName>'
--What are the merge publications in this database?
exec sp_helpmergepublication
--What are the articles in merge publications in this database?
exec sp_helpmergearticle -- to return information on articles for a single publication, specify @publication='<PublicationName>'
--Which objects in the database are published?
select name as published_object, schema_id, is_published as is_tran_published, is_merge_published, is_schema_published
from sys.tables where is_published = 1 or is_merge_published = 1 or is_schema_published = 1
union
select name as published_object, schema_id, 0, 0, is_schema_published
from sys.procedures where is_schema_published = 1
union
select name as published_object, schema_id, 0, 0, is_schema_published
from sys.views where is_schema_published = 1
--Which columns are published in snapshot or transactional publications in this database?
select object_name(object_id) as tran_published_table, name as published_column from sys.columns where is_replicated = 1
--Which columns are published in merge publications in this database?
select object_name(object_id) as merge_published_table, name as published_column from sys.columns where is_merge_published = 1
См. также
Основные понятия
Вопросы, часто задаваемые администраторам репликации
Другие ресурсы
Хранимая процедура sp_get_distributor (Transact-SQL)
sp_helparticle (Transact-SQL)
sp_helpdistributiondb (Transact-SQL)
Хранимая процедура sp_helpdistpublisher (Transact-SQL)
sp_helpdistributor (Transact-SQL)
sp_helpmergearticle (Transact-SQL)
sp_helpmergepublication (Transact-SQL)
sp_helppublication (Transact-SQL)
sp_helpreplicationdboption (Transact-SQL)
sp_helpsubscriberinfo (Transact-SQL)
sys.columns (Transact-SQL)
sys.databases (Transact-SQL)
sys.procedures (Transact-SQL)
sys.servers (Transact-SQL)
sys.tables (Transact-SQL)
sys.views (Transact-SQL)