清空log時出現問題

zwf_hunter 2006-06-29 09:39:37
我要清空一個數據庫,名叫Club,我先用下面這句SQL語句
DUMP TRANSACTION Club WITH NO_LOG
但是運行時出現錯誤,提示
The log was not truncated because records at the beginning of the log are pending replication. Ensure the Log Reader Agent is running or use sp_repldone to mark transactions as distributed.
請問這應該怎樣解決
...全文
174 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
zwf_hunter 2006-07-03
  • 打赏
  • 举报
回复
對不起,電腦中毒,前兩天沒來給分,現在就結貼
enkubb 2006-06-30
  • 打赏
  • 举报
回复
可以参考
http://support.microsoft.com/default.aspx?scid=kb;en-us;306769
zwf_hunter 2006-06-30
  • 打赏
  • 举报
回复
沒有人再來解答一下嗎?
雖然不是很明白,但還是謝謝wangdehao(找找找(现在很幸福))
再等一天,如果再沒人來,就結帖
wangdehao 2006-06-29
  • 打赏
  • 举报
回复
参考联机帮助:

sp_repldone
更新标识服务器的上次分布式事务的记录。此存储过程在发布服务器的发布数据库上执行。

语法
sp_repldone [ @xactid = ] xactid
, [ @xact_seqno = ] xact_seqno
[ , [ @numtrans = ] numtrans ]
[ , [ @time = ] time
[ , [ @reset = ] reset ]

参数
[@xactid =] xactid

是服务器上次分布式事务的第一个记录的日志序列号 (LSN)。xactid 的数据类型为 binary(10),无默认值。

[@xact_seqno =] xact_seqno

是服务器上次分布式事务的最后一个记录的日志序列号 (LSN)。xact_seqno 的数据类型为 binary(10),无默认值。

[@numtrans =] numtrans

是分发的事务数。numtrans 的数据类型为 int,无默认值。

[@time =] time

是分发上一批事务所需的毫秒数(如果提供)。time 的数据类型为 int,无默认值。

[@reset =] reset

是重置状态。reset 的数据类型为 int,无默认值。如果是 1,则日志中的所有复制事务都标记为已分发。如果是 0,则事务日志重置为第一个复制事务并且复制事务不标记为已分发。仅当 xactid 和 xact_seqno 均为 NULL 时 reset 才有效。

返回代码值
0(成功)或 1(失败)

注释
sp_repldone 用于事务复制。

sp_repldone 由日志读取器进程用来跟踪已分发的事务。



注意 如果手工执行 sp_repldone,可以使已传送事务的顺序和一致性无效。


通过使用 sp_repldone,可以手工告诉服务器某个事务已复制(已发送到分发服务器)。此过程还使您得以更改标记为下一个等待复制的事务。可以在复制事务列表中前后移动。(小于或等于那个事务的所有事务都标记为已分发。)

可以通过使用 sp_repltrans 或 sp_replcmds 获得必需的参数 xactid 和 xact_seqno。

权限
sysadmin 固定服务器角色成员或 db_owner 固定数据库角色成员可以执行 sp_repldone。

示例
当 xactid 为 NULL、xact_seqno 为 NULL 并且 reset 是 1 时,日志中的所有复制事务都标记为已分发。此过程在事务日志中存在不再有效的复制事务并且想截断该日志时很有用,例如:

EXEC sp_repldone @xactid = NULL, @xact_segno = NULL, @numtrans = 0, @time = 0, @reset = 1

注意 可以在紧急情况下使用此过程,以允许在有事务挂起复制时截断事务日志。使用此过程可防止 Microsoft® SQL Server™ 2000 在未发布和重新发布数据库之前复制数据库。
zwf_hunter 2006-06-29
  • 打赏
  • 举报
回复
我的整個步驟是:
1.清空日志 DUMP TRANSACTION 库名 WITH NO_LOG
2.截断事务日志 BACKUP LOG 库名 WITH NO_LOG
3.收缩数据库文件
但運行那兩句SQL語句都會出現同樣的提示
playwarcraft 2006-06-29
  • 打赏
  • 举报
回复
怎麼不用backup ?

22,209

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧