配置了Alwayson之后,因为没有只能使用完全恢复模式,不能使用简单或大容量日志模式,所以日志不断增长,不能使用改变恢复模式的方式清空日志
手动操作收缩或截断日志也无效
读了一些文章后发现,有人使用
主要实例脱离可用性组 - 修改为简单恢复模式 -修改回完整恢复模式 - 完整备份 - 加回可用性组 -将辅助副本还原(注意是With NoRECOVERY) - 重启同步
这样虽然可行,但也太麻烦了,对于俺们每天增长70GB的日志文件来说,操作未免太频繁了
也许是我对SQL Server太不熟悉了,其实只要在“备份首选项”(可用性组,右键,属性,)指定的数据库实例上“备份事务日志”即可将事务日志备份并截断
对于事务日志增长频繁的数据库只要建立一个维护计划,定期备份事务日志即可,可以是几分钟到一个小时
引用:
为什么完整备份不能截断事务日志 http://www.cnblogs.com/i6first/p/3704700.html
嗯,全量备份一次后,使用事务日志备份
Log文件不会变小,但里面的内容会变少
可以用
1
2
3
4
5
6
|
SELECT name , data_space_id 文件组id, size /128 [文件大小(兆)], FILEPROPERTY( name , 'SpaceUsed' )/128 [已用空间(兆)], size /128 - FILEPROPERTY( name , 'SpaceUsed' )/128 [未用空间(兆)], FILEPROPERTY( name , 'SpaceUsed' )*100.0/ size [使用率(%)], max_size/128 [最大值(兆)], growth 增长值, is_percent_growth 是否百分比增长, physical_name 物理路径 FROM sys.database_files a ORDER BY [使用率(%)] DESC |
来查看
收缩日志文件后日志文件大小变会变小,但是如无必要,不建议