日期:2014-05-17  浏览次数:20586 次

求解惑,关于SQL SERVER日志文件的问题
现在使用sqlserver 2008R2,日志增长速度很快,而且觉着08的日志文件用处不是太大...
因为没找到过什么工具来操作2008的日志
不像2000,或者2005有个log explorer。。


所以我限制了2008的日志文件大小为1G,但是碰到了一个问题,当日志文件为1G的时候,我在操作数据库,就会提示我,日志文件已满。无法操作


我记得在哪里看过,日志文件会去循环覆盖之前日志内容,也就是当日志为1G之后,在多出来的日志,就会覆盖最早的日志,使日志文件一直保持为1G


不知道我理解的是否正确,是否有循环覆盖这么一说



求各位解惑,谢谢
sql?server 日志

------解决方案--------------------
ok,你需要了解,如果你不主动截断事务日志让其得到重用的话,那么它就会不断的增大。
所以你需要截断事务日志让它重复利用,就可以在一定程度上控制log文件大小。
两个办法:
1.将数据库设计为简单模式
2.建一个sql job,每隔1小时(甚至几分钟)去做事务日志的备份。

重要的库都推荐用方法2,不重要的用1.


------解决方案--------------------
千万不要觉得日志没用,如果非要在mdf和ldf里面区分重要级别,那么ldf无疑是最重要的文件。
http://blog.csdn.net/dba_huangzj/article/details/7982945
------解决方案--------------------
引用:
ok,这么说吧:
userA 做一个update操作,用了500MB log空间
之后1ms,你做了一个update操作,用了600MB log空间,
那么没问题,你会重用它的那500MB,因为你是简单模式,它操作完就自动截断了。


如果在userA操作期间,也就是他的update未完成时,这时你开始了一个update,你需要600MB,此时就会失败,因为空……


莫非他的操作中有大数据库的增删改?同时产生1G的日志空间,该是什么操作呢?

大表的delete update,或者是大批量数据的导入?
------解决方案--------------------
如果恢复默认选择完全 肯定 日志会增长的很大
选择
简单的恢复模式 日志记录是最小的 但是 数据库 损坏, 不能恢复

建议 

备份日志,然后截断收缩