资源描述:
《sqlserverreplication常见错误》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、SQLServerReplication常见错误1.错误:已将此(这些)订阅标记为不活动,必须将其重新初始化。需要删除NoSync订阅,然后重新创建它们usedistributiongo--查找状态不正常的发布selectstatus,*fromdbo.MSsubscriptionswherestatus<>2--修改状态updatedbo.MSsubscriptionssetstatus=2wherestatus<>2观察复制链是否能正常运行,正常后用tablediff比较发布链中的表数据是否一致还可以重新初始化快照,但是数据量
2、大就是个悲剧。2.错误:表、存储过程不存在以及表结构不一致等处理方法:a.表或存储过程不存在:在订阅端对应的库中补齐缺失的对象;有一种比较奇怪的现象是订阅端表明明存在,但是同步链依然报错,此时可能有两种情况:第一:表字段不一致,可以参照下面(b)的方式补齐表字段;第二:表字段也一致,但是依旧报错,可以采取三种方式解决:a.暂停同步链,然后再次开启,看是否能通过,如果不行,进行下面的步骤;b.勾选掉同步链中报错的这个表,然后观察同步链,此时去掉了这个表的发布,错误一般都能过去,等到所有数据同步后,再将这个表勾选上,一般都能过;同步链
3、正常后,在用TableDiff工具比较下这个表的数据;c.如果b步骤依然报错,那就只能重建了。b.列名'xxx'无效可以通过以下语句查找缺失的字段对应的表--查找某个发布链中的某个字段(Rp_XXXX发布名xxx字段名)selecta.nameastable_name,b.nameascolumn_name,(select'altertable'+a.name+'add'+b.name+''+(casewhenname='nvarchar'thencast(b.max_length/2ASvarchar)whennamelike'
4、date%'orname='money'then''elsenameend)fromsys.typeswheresystem_type_id=b.system_type_id)asdefinitionFROMdbo.sysarticlesaWITH(NOLOCK)innerjoinsys.columnsbWITH(NOLOCK)ona.objid=b.object_idinnerjoindbo.syspublicationscwith(nolock)ona.pubid=c.pubidwherec.name='Rp_XXXX'and
5、b.name='xxx'3.错误:.主键冲突处理方法:跳过错误错误完成后,需要比较两边数据是否一致(比下数据量就行了)---------------跳过订阅机器上面的错误-----------------------------------------------在分发机器上----------------------------语法sp_helpsubscriptionerrors[@publisher=]'publisher',[@publisher_db=]'publisher_db',[@publication=]'pub
6、lication',[@subscriber=]'subscriber',[@subscriber_db=]'subscriber_db'--getpublishersubscriberselect*fromMSsubscriber_info--getpublisher_dbpublicationsubscriber_db=publisher_dbselect*fromMSpublications--examplesp_helpsubscriptionerrors'SQLw2k8','dbtranpub','dbtranpub_p
7、ub','SQLw2k8Subscriber','dbtransub'--获取xact_seqno值----------------------在订阅机器上---------------------------sp_setsubscriptionxactseqno[@publisher=]'publisher',[@publisher_db=]'publisher_db',[@publication=]'publication',[@xact_seqno=]xact_seqno--examplesp_helpsubscriptio
8、nerrors'SQLw2k8','dbtranpub','dbtranpub_pub',xact_seqno---------------------------------------------------------------------