【发布时间】:2013-02-27 10:53:07
【问题描述】:
在我的 SQL Server 上,我启用了更改跟踪,自动清理设置为 false 或 true,保留期非常长,例如 364 天。
使用 Microsoft Sync Framework 我第一次同步成功,第二次尝试同步我得到错误
“System.Data.SqlClient.SqlException (0x80131904): SQL Server 更改 跟踪已清理表“TableName”的跟踪信息。到 从此错误中恢复,客户端必须重新初始化其本地 数据库,然后重试”。
为什么自动清理设置为false,跟踪信息却被清理了?
我尝试了article 发布的解决方案,但它对我不起作用,当我运行重新初始化代码时,它需要很长时间,并且 RAM 使用量不断增加,直到我出现内存不足异常。
请注意,我的数据库很大,超过 400 MB,同步的记录总数超过 163,000 条记录,第一次同步需要很长时间,所以在发生此错误时删除本地 CE 数据库是不可行的。
【问题讨论】:
-
你在服务器数据库上做过什么吗?即,截断表?等等……
-
服务器上没有任何变化,甚至数据也没有。
-
您是否正在从不同位置复制 SQL Ce 数据库?如果 SQL Ce 数据库上的同步锚被重置,也会出现该错误。
-
不,我不会从任何地方复制它,SQL CE 数据库是使用同步逻辑创建的。
-
十个月后,你做了什么来修复它?我尝试了相同的解决方案(文章)来恢复客户数据,但没有奏效......在我的情况下,我忘记将保留天数设置为超过 2 天......
标签: sql-server microsoft-sync-framework change-tracking