如何收缩超大的SharePoint_Config数据库

发表于:2016-2-23 10:42

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:霖雨    来源:51Testing软件测试网采编

  前言
  在已经运行了2年多的SharePoint服务器上,发现SharePoint_Config的数据库文件越来越大,已经达到90几个GB,收缩可以减小20几个GB,但是一周以后又会恢复到90几个GB大小,甚是奇怪。
  因为磁盘空间不足,一共只有200GB大小,还有大大小小网站若干,用来存放照片、视频、文档等,所以决定好好研究一下这个问题。
  经过不懈的谷歌,发现了问题症结所在,现在分享给大家,希望对遇到类似的问题的人,有个参考。
  对了,注意。。这里是指数据库文件,不是数据库的日志文件,如果是日志文件的话,在数据库管理工具中,修改备份模式为简单,直接收缩就好了!
  1、在数据库服务器中打开Microsoft SQL Server Management Studio,找到SharePoint_Config数据库,然后执行下面的语句:
  EXEC sp_MSforeachtable @command1="EXEC sp_spaceused '?'"
  2、看到执行的结果,就是每个数据库表的大小,然后看到TimerJobHistory这个表的行数非常多,大小也非常的大。
  3、谷歌有类似的解决方案,说是因为job-delete-job-history这个Job运行失败,造成了Job运行的历史记录不能被及时清理,造成了配置数据库越来越大。所以运行下面的脚本,会清理一年以来的积累,而这个Job默认每周运行一次,清理上周积累下来的历史记录。
  $history = get-sptimerjob | where-object {$_.name -eq “job-delete-job-history”}
  $history.daystokeephistory = 365
  $history.update()
  $history.runnow()
  4、运行完毕以后,还要将daystokeephistory数值改回7天,如下图:
  
  5、可以看到运行以后,确实有个Job再运行,不过我这里可能由于已经超过365天了,所以也没有起作用,Job依旧运行Failed。所以只能继续谷歌,寻找解决方案。
21/212>
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号