装饰设计费报价单:金蝶联盟:www.kingdee.info : SQL2000 如何清除SQL日志

来源:百度文库 编辑:偶看新闻 时间:2024/04/28 00:29:07
SQL2000 如何清除SQL日志  如何清除SQL日志 1.打开查询分析器,输入命令
  DUMP TRANSACTION 数据库名 WITH NO_LOG
  2.再打开企业管理器--右键你要压缩的数据库--所有任务--收缩数据库--收缩文件--选择日志文件--在收缩方式里选择收缩至XXM,这里会给出一个允许收缩到的最小M数,直接输入这个数,确定就可以了。
  
  清除Log有两种方法:
  
    1.自动清除法
  
    开放数据库选项 Trunc Log on Chkpt,使数据库系统每隔一段时间自动清除Log。此方法的优点是无须人工干预,由SQL Server自动执行,并且一般不会出现Log溢满的情况;缺点是只清除Log而不做备份。 SQL   Server200的,请参考:
在查询分析器执行以下语句
sp_dboption     'database_name ',   'trunc.   log   on   chkpt. ',   'true '
注意查询分析器设成每条语句自动提交。
可保证以后该数据库日志文件大小永远为0!!!!!
  
    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文件路径'
  命令附加数据库。 OVER.在别的地方看到的 不错。 ------------------------------------------------------------------------------------------
备份数据库:
-- Back up the full MyNwind database.
BACKUP DATABASE MyNwind TO MyNwind_2
备份log日志文件:
-- Back up the log of the MyNwind database.
BACKUP LOG MyNwind TO MyNwindLog1