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

发布日期  发布: 2009-2-10 | 发布人  发布者: 越夜越有机 | 来源  来源: 江西广告网


  先介绍一个简单的方法。   就是把数据库的故障还原模型设置为“简单”(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天的。   用数据库维护计划向导可以很方便的建立备份计划,不过一定要记得设置保留多久的备份哦,否则硬盘空间被备份给占满了就坏事了。    <
本站文章部分内容来自互联网,供读者交流和学习,如有涉及作者版权问题请及时与我们联系,以便更正或删除。感谢所有提供信息的网站,并欢迎各类媒体与我们进行信息共享合作。
关闭本窗口 | 打印 | 收藏此页 |  推荐给好友 | 举报

版块排行

  • SEO搜索                                    5984
  • Web软件                                    3334
  • 交互设计                                    3279
  • 平面软件                                    2575
  • 设计欣赏                                    2501
  • 游戏世界                                    1244
  • 程序开发                                    830
  • 前沿视觉                                    560
  • 电脑网络                                    514
  • 摄影赏析                                    291