清除SQL Server数据库日志的两种办法

第一种:常规做法,推荐使用

1. 截断日志

BACKUP   LOG   < dbname >   WITH  TRUNCATE_ONLY

2. 收缩日志

USE   < dbname >
DBCC  SHRINKFILE ( < logfilename > )


第二种:非常规做法,存在丢失数据风险,不推荐使用

1: 分离数据库

exec  sp_detach_db  ' dbname '

2:删除LOG文件

3. 附加数据库

exec  sp_attach_db  @dbname =   ' dbname '
        , 
@filename1   =  N ' filename1_location '
 , ...


补充说明:

如果不希望日志增长,可以进行以下设置

1. 设置数据库恢复模式为“简单”

ALTER   DATABASE  dbname  SET  RECOVERY SIMPLE

当数据库执行检查点处理时如果事务日志占用事务文件超过其大小的70% 则将其内容清除

2. 设置数据库“自动收缩”选项为True

ALTER   DATABASE  dbname  SET  AUTO_SHRINK  ON

当数据库文件或日志文件的未用空间超过其大小的25%时,系统将自动缩减文件使其未用空间等于25% 

  • 0
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值