NETBLOG

TANYA.NET
  首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

清除MSSQL日志信息

Posted on 2007-07-06 09:28  soso  阅读(739)  评论(0)    收藏  举报
        在风上看到了一些清除日志的文章,但是觉得没有必要那么复杂,当然,这只是针对于个人来产,如果企业就会涉及到备份问题,我们这里现在不涉及到备份问题,就是简单的删除日志:
方法很简单:

直接删除日志文件:*.LDF,然后在附加数据加时,不要选择日志文件即可,就是这么简单.

附网上的一般解决方法:

清除Log有两种方法:

1.自动清除法

开放数据库选项 Trunc Log on Chkpt,使数据库系统每隔一段时间自动清除Log。此方法的优点是无须人工干预,由SQL Server自动执行,并且一般不会出现Log溢满的情况;缺点是只清除Log而不做备份。

2.手动清除法

执行命令“dump transaction”来清除Log。以下两条命令都可以清除日志:

dump transaction with truncate_only
dump transaction with no_log

通常删除事务日志中不活跃的部分可使用“dump transaction with trancate_only”命令,这条命令写进事务日志时,还要做必要的并发性检查。SYBASE提供“dump transaction with no_log”来处理某些非常紧迫的情况,使用这条命令有很大的危险性,SQL Server会弹出一条警告信息。为了尽量确保数据库的一致性,你应将它 作为“最后一招”。

以上两种方法只??清除日志,而不做日志备份,若想备份日志,应执行“dump transaction database_name to dumpdevice”命令。

PS:附一个更好的方法

先分离数据库后,直接删除日志以后,再在查询分析器里用

exec sp_attach_single_file_db '数据库名', '.mdf文件路径'
命令附加数据库。