公司里装了MOSS2007 使用的是SQL2005数据库,开始还觉得挺好用,可是某一天突然发现上传文件到MOSS时老是失败!不知何故。远程桌面登录到服务器上一看,系统盘空间竟然只剩下3M!赶紧查看到底是哪个文件占用了巨大的空间。找了一会,发现是MOSS的数据库日志占了巨大的空间(一个占20G!)。
决定清理数据库日志文件。
首先运行查询语句 DUMP TRANSACTION databaseName WITH NO_LOG 清楚日志文件
然后在对应的数据库上单击右键,选择收缩数据库文件,释放空间。经过此步就能够看到日志文件占用的空间被释放了。
清除数据库日志文件的方法网上很多。可以到网上查询。
——————————————————————分割线——————————————————————————
由于日志文件会一直增大(可能和设置有关,我没找到,哪位高手知道的话希望指点一二),我们不能每次都等硬盘没空间了才去清理。这时可建立一个定期执行的作业,定期清理数据库日志。这里讲述一下建立代理作业的一般步骤
没有截图,就文字说明吧。
- 打开SQL2005 ,点击SQL Server 代理(确保服务是运行着的)
- 新建作业,在“新建作业”对话框中,右边是选择页,左边是每页的具体内容
- 在常规里,填写好名称、所有者、类别(这里选择)数据库维护、填写详细以便日后查阅说明
- 在“步骤”页 里新建步骤,在弹出的“新建作业步骤” 窗口,填好步骤名称,选择类型、选择数据库,
- 在命令里填写sql脚本“DUMP TRANSACTION DatabaseName WITH NO_LOG go dbcc shrinkdatabase (DatabaseName) /*收缩数据库*/” 点击“分析”查看语法是否正确
- 在高级选项页里 ,设置一下重试的次数和间隔,选择 运行的用户。多建几个步骤以完成作业
- 选择 作业计划,这里就是编写作业的运行时间、频率等,这里选择每个月运行一次。(可以再见一个只运行一次的计划作为测试)
- 在通知、和目标上进行一些设置后(可以使用默认)新建作业基本算是完成了。
- 最后 单击确定。
新建好的作业可以在 “作业活动监视器”中查看其状态