如何使SQL Server的日志文件不会增大 -张志
Access软件网QQ交流学习群(群号码198465573),欢迎您的加入!
首页 >技术文章> ADP及SQL SERVER


如何使SQL Server的日志文件不会增大

发表时间:2006/7/29 评论(0) 浏览(5740)  评论 | 加入收藏 | 复制
   
摘 要:如何使SQL Server的日志文件不会增大 
正 文:
如何缩小MSSQL的日志文件已经是一个经常性的问题了,不过这个问题在精华区已经有不少答案了,我这里也不再赘述。
  现在我们讨论一下治本的问题,即如何使日志文件不再增大?
  
  先介绍一个简单的方法。
  就是把数据库的故障还原模型设置为“简单”(SQL2K)。这样它就会在Checkpoint的时候截断日志。
  具体操作方法是:
  1、在Enterprise Manager中右键点数据库,“属性|选项|故障还原”,选择“简单”就可以了,如果是SQL7,在“属性|选项”中有一个“trunc. log on chkpt. ”,选中就可以了。
  
  2、如果不想用Enterprise Manager,在Query Analyser或者isql里面执行EXEC sp_dboption 'your_dbname', 'trunc. log on chkpt.', 'TRUE'就可以了
  
  但是,要注意的是,这样做了之后,虽然日志不会增大,但是也意味着你一旦出现误操作,将不会有利用日志恢复的机会。(如何利用日志来恢复请参见精华区的FAQ)所以,绝对不建议在生产数据库上截断日志,除非你有充足的理由和足够的把握或者……承担责任的不是你。
  
  既然这种方法不安全,下面我将介绍一种安全的方法。
  
  大家都知道,SQL Server 在完成事务日志备份时将自动截断事务日志中的不活动部分。这些不活动的部分包含已完成的事务,因此在恢复过程中不再使用。相反,事务日志的活动部分包含仍在运行但尚未完成的事务。SQL Server 将重新使用事务日志中这些截断的非活动空间,而不是任由事务日志继续增大并占用更多的空间。
  
  所以,我们备份事务日志就可以使日志文件不再增大了。但是呢,日志文件一直放着也不是个办法,删除呢,又会失去恢复的可能性。我们可以结合完全备份来做。做过完全备份之前的事务日志就可以删除了。比如说,一个备份计划,每天一次完全备份,保留7天内的,每15分钟一次事务日志备份,保留2天的。用数据库维护计划向导可以很方便的建立备份计划,不过一定要记得设置保留多久的备份哦,否则硬盘空间被备份给占满了就坏事了。

Access软件网交流QQ群(群号:198465573)
 
 相关文章
SQL Server日志文件总结及日志满的处理   【UMVsoft整理  2006/7/26】
SQL SERVER 日志已满的处理方法  【风行  2013/2/3】
如何查看sqlserver日志的方法  【麥田  2013/3/15】
SQL Server日志满或过大的处理方法  【zqli  2013/11/28】
把操作写入日志的方法  【红月  2015/1/3】
Access快速开发平台--如何使用平台的操作日志功能  【缪炜  2015/5/8】
常见问答
技术分类
相关资源
文章搜索
关于作者

张志

文章分类

文章存档

友情链接