服务器-定期清除日志-压缩或SQL中的_LOG.LDF文件

本文介绍了在SQL Server中如何在不停止服务的情况下清理数据库的日志文件(_LOG.LDF),包括使用SQL语句备份并收缩日志文件,以及通过设置简单恢复模式来限制日志文件的增长。同时提到了通过分离和附加数据库的方法删除日志文件,以及在SQL Server企业管理器中设置日志文件增长限制。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

今天服务器一直很卡,暂未找到真正原因的时候想起来清理一下数据库LOG日志。

 

看了一下。8XXXXX多的KB。

 

大苹果发给我如下可以不停止sqlserver就能操作的帖子:

 

方法1、  
  --在查询分析器,选中所要清理日志的数据库,执行如下SQL  
  backup   log   数据库名   with   no_log  
  DBCC   SHRINKFILE   (   日志文件名或日志文件ID,要缩小的目标大小,例子如下)  
                   
  在当前数据库下  
  select   fileid,groupid,name   from   sysfiles   where   groupid=0  
  ----------------------------------------------------------  
  得到以下结果   
   

  fileid    groupid     name  
    2       0  test_log
   


  以上结果,fileid为日志文件ID,name为test_log  
   
  你可以  
  backup   log   test   with   no_log  
  dbcc   shrinkfile   (2,2)  
  or  
  backup   log   test   with   no_log  
  dbcc   shrinkfile   ('test_log',2)  
  如果以后,不想要它变大,在数据库上点右键->属性->选项->故障恢复     模型   选择   简单模型就可以了!  
  或用SQL语句  
  alter   database   数据库名   set   recovery   simple  
   
  方法2、  
  SQL   SERVER企业管理器-》SQL   SERVER组-》服务器-》数据库-》选中数据库实体-》右键-》所有任务-》分离数据库,  
  然后到数据库所在物理路径下删除.ldf文件,再数据库右键-》所有任务-》附加数据库,即可,会重新生成日志文件。  
  ---------------------------------------------------------------------------------------------------  
  对于SQL   7.0以上两种方法可能不行,SQL   SERVER企业管理器-》右键数据库-》所有任务-》截断数据库日志,按操作进行即可!  
   
  如何限制其增长?  
  SQL   SERVER企业管理器-》右键数据库-》属性-》事务日志选项页-》选中将文件增长限制为:  
  输入你要的数

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值