sql server 2005進程無法向表“"dbo"."xxx"”進行大容量復制。 (錯誤號: MSSQL_REPL20037) 解決方案
綠色資源網(wǎng)一臺數(shù)據(jù)庫服務器更換了一臺機器,需要重新做一下同步復制,結(jié)果在訂閱的時候出錯了。
顯示的錯誤消息:
錯誤消息:
進程無法向表“"dbo"."Company"”進行大容量復制。 (源: MSSQL_REPL,錯誤號: MSSQL_REPL20037)
獲取幫助: http://help/MSSQL_REPL20037
成批發(fā)送失敗
在數(shù)據(jù)流中缺少用于大容量復制 text、ntext 或 image 數(shù)據(jù)的文本長度。 (源: MSSQLServer,錯誤號: 4813)
獲取幫助: http://help/4813
若要獲取詳細說明初始化訂閱表時所遇到的錯誤的錯誤文件,請執(zhí)行在下面顯示的 bcp 命令。有關(guān)該 bcp 實用工具及其支持的選項的詳細信息,請參閱 BOL。 (源: MSSQLServer,錯誤號: 20253)
獲取幫助: http://help/20253
bcp "xxx"."dbo"."Company" in "d:\ReplData\unc\WIN-39LLDBLGOAH_CR173COM_173\20131209110101\Company_2.bcp" -e "errorfile" -t"\n<x$3>\n" -r"\n<,@g>\n" -m10000 -SWIN-URF3GO69MJ2 -T -w (源: MSSQLServer,錯誤號: 20253)
獲取幫助: http://help/20253
解決方案:
1、將 服務器 -> 屬性 -> 高級將中 最大文本復制大小 改大一點。最小加兩個0
(這么搞了一下還是不行)
后來排查到這張表有一列很長且有特殊html標簽類/<&%|^等特殊字符,去掉該列就很順利的發(fā)布成功了.
但實際中這個排除是非常難的,你根本不知道是哪一條記錄有特殊字符。
后來將所有字符集全部改成 unicode 才解決。
將所有的非unicode(varchar/char/text) 類型字段調(diào)整為unicode(nvarchar/nchar/ntext)類型即可"
看來以后在新建表的時候還是最好采用 unicode 字符集
關(guān)鍵詞:sql,MSSQL,解決方案
閱讀本文后您有什么感想? 已有 人給出評價!
- 0
- 0
- 0
- 0
- 0
- 0