数据库日志过大

这两天遇到了项目数据库日志过大问题,日志文件达到快500G,收缩也没用,后来查到各种资料,解决办法:

1、 将数据库进行一次事务日志备份(第一次备份下来的日志也将近500G,不知道怎么回事,第二次备份才2G);

2、查看log_reuse_wait和log_reuse_wait_desc值

SELECT name,log_reuse_wait,log_reuse_wait_desc
   FROM sys.databases
      WHERE name = '数据库'

在备份之后,执行以上语句,查看数据库的log_reuse_wait和log_reuse_wait_desc,备份之前log_reuse_wait是2,log_reuse_wait_desc是LOG_BACKUP,之后变为0和NOTHING,变为0以后,收缩才有效果

3、收缩

这里写图片描述


还有一个比较暴力的解决办法:

—1. 设为简单恢复模式

use [master]

alter database [数据库名] set recovery simple with no_wait

alter database [数据库名] set recovery simple

—2. 收缩数据库至8M,需要用:select * from sys.database_files 查询一下真实log名称,替换下面语句中的A

use 数据库名

dbcc shrinkfile(A,8)

—3. 重新设为完整恢复模式

use [master]

alter database 数据库名 set recovery full with no_wait

alter database 数据库名 set recovery full

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值