清理SharePoint 2010的SQL Server 2008 R2日志数据库的方法!

      公司用SharePoint 2010已有三年多的时间了,上BPM项目也有2年多的时间,之前供应商的部署SharePoint数据库都在一个物理盘,数据库文件与日志文件没有进行分开存放到不同的物理磁盘上,最近发现Sharepoint的数据库磁盘经常满,导致无法保存数据,经检查发现数据磁盘的所有日志文件占了800多个G,总共磁盘空间也就0.99T,也就是日志文件远远大于数据文件,因此需要收缩日志文件,一开始利用图形化的收缩文件方式,只有收缩数据文件的大小,对于日志文件并不起作用:

    

    这个方式只有数据库事务是简单模式下起作用,如果是完全模式不起任何作用,也就是收缩不了日志文件,检查数据库的事务模式,可以通过以下SQL语句:

SELECT NAME, recovery_model_desc FROM sys.databases

    

  经检查发现sharepoint的状态数据库日志文件很大,有78G,因此缩减状态数据库日志文件到500M,具体操作如下:

ALTER DATABASE StateService_fe3a026d155a4852b906c8f3735cdcd3 SET Recovery simple
go
use StateService_fe3a026d155a4852b906c8f3735cdcd3
go
DBCC SHRINKFILE(StateService_fe3a026d155a4852b906c8f3735cdcd3_log,500)
go

    最终实现的效果,如下图:

    

本博客为软件人生原创,欢迎转载,转载请标明出处:http://www.cnblogs.com/nbpowerboy/p/3380079.html 。演绎或用于商业目的,但是必须保留本文的署名软件人生(包含链接)。如您有任何疑问或者授权方面的协商,请给我留言。

posted @ 2013-10-21 10:40  软件人生  阅读(2221)  评论(3编辑  收藏  举报