要复制的LOB数据的长度超出了配置的最大值65536

来源:这里教程网 时间:2026-03-02 12:11:26 作者:

报错: 原因分析: SQL SERVER报错信息已经告诉我们,与参数“max text repl size”有关,对于该参数,官方文档解释如下: The max text repl size option specifies the maximum size (in bytes) of text, ntext, varchar(max), nvarchar(max),  varbinary(max), xml, and image data that can be added to a replicated column or captured column in a single  INSERT, UPDATE, WRITETEXT, or UPDATETEXT statement. The default value is 65536 bytes. A value of -1 indicates  that there is no size limit, other than the limit imposed by the data type. 翻译为中文:max text repl size (做大文本复制尺寸) 选项是指在执行INSERT, UPDATE, WRITETEXT,或者 UPDATETEXT  的时候,对于数据类型text, ntext, varchar(max), nvarchar(max), varbinary(max), xml,  image 可以被添加到复制列或者 捕获列的最大长度。默认值是65536,如果设置为”-1”,则长度无限制。   简而言之,当参数max text repl size为65536时,如果发布数据库(主库)在执行INSERT, UPDATE, WRITETEXT,  UPDATETEXT操作时,列的字符长度超过了65536,就会产生复制操作失败,同时主库的INSERT, UPDATE,  WRITETEXT, UPDATETEXT也会失败。 这个表开启了CDC,所以在复制时候捕获列最大长度不能超过65536。 解决办法: 1、设置max text repl size为-1。 2、设置 max text repl size为一个较大数值。 选择第二种解决方案: 问题解决。

相关推荐