Sql server ReportServer数据库的大小正在增加。太大了

Sql server ReportServer数据库的大小正在增加。太大了,sql-server,reporting-services,ssrs-2008,reportserver,Sql Server,Reporting Services,Ssrs 2008,Reportserver,我拥有的报表服务器数据库超过300GB注:它是ReportServer,而不是ReportServerTempDB。dbo.segment表有超过3500万条记录。我不太清楚它为什么长得这么大。起初,我查看了快照,并将“站点设置”下的限制设置为10天,而不是无限期。不幸的是,这并没有解决问题。请有人能给我一些建议下一步去哪里看?需要注意的是,另一台服务器上的数据库是5GB,我希望它是5GB。只要您可以停止并重新启动报表服务器服务,ReportServerTempDB数据库中的任何内容都可以删除

我拥有的报表服务器数据库超过300GB注:它是ReportServer,而不是ReportServerTempDB。dbo.segment表有超过3500万条记录。我不太清楚它为什么长得这么大。起初,我查看了快照,并将“站点设置”下的限制设置为10天,而不是无限期。不幸的是,这并没有解决问题。请有人能给我一些建议下一步去哪里看?需要注意的是,另一台服务器上的数据库是5GB,我希望它是5GB。

只要您可以停止并重新启动报表服务器服务,ReportServerTempDB数据库中的任何内容都可以删除

每个报表服务器数据库都使用一个相关的临时数据库来存储会话和执行数据、缓存的报表以及报表服务器生成的工作表。后台服务器进程将定期从临时数据库中的表中删除旧的和未使用的项

如果临时数据库丢失,Reporting Services不会重新创建它,也不会修复丢失或修改的表。尽管临时数据库不包含持久性数据,但无论如何都应该备份数据库的副本,以避免在故障恢复操作中重新创建数据库

如果备份临时数据库并随后将其还原,则应删除其中的内容。通常,随时删除临时数据库的内容是安全的。但是,删除内容后必须重新启动报表服务器Windows服务

不过,在做这件事之前,你应该先备份一下。。。你永远不知道等待的是什么虫子

ReportServer数据库中数据库增长的最可能来源是报表历史快照。您可以通过站点设置>常规中的SSRS管理web界面进行配置:

选择报告历史记录的默认设置: 在报告历史记录中保留不限数量的快照 以天为单位限制报告历史记录[数量]的副本 或者,也可以通过SQL Server Reporting Service的“服务器属性”>“历史记录”面板通过SSMS:

在报告历史记录中保留不限数量的快照 限制报告历史记录的副本:[数量]以天为单位
我在这个主题上找到的每一个主题都与SSRS 2008或2008R2有关;2012+上没有任何内容。考虑到2008年完全不受支持,这可能是尽快解决升级问题的另一个原因@谢谢你的评论。不幸的是,我的公司再过一年就不会升级了。我只需要一些指导,不管SQL版本是什么,都知道是什么原因导致这个值这么高。提前感谢嗯,ReportServerTempDB中的段表不是吗?它也在ReportServerFYI中:我的reportserver数据库约为2.3GB,占用的绝大部分空间都在ExecutionLogStorage中这是SQL Server 2016。您是否已根据磁盘空间或记录查看了表的大小?在SSMS中,单击ReportServer数据库中的“表”选项卡/文件夹,然后单击F7打开“对象资源管理器详细信息”窗口。从这里,您可以按“使用的数据空间”列进行排序,这将指向罪犯。还要检查“数据库属性”中“可用空间”下报告的空间大小。如果这是一个很大的数据库,那么您可以缩小数据库。感谢您的帮助@alwayslearning。我尝试了限制快照报告,但似乎没有帮助。我假设有一个清理工作可以在此后工作,并且这是在reporting services重新启动24小时前完成的,大小保持不变。ReportServer数据库没有什么特别之处,因为它与其他数据库一样是一个用户数据库。通过使用sp_spaceused(即exec sys.sp_spaceused@ObjName=N'ActiveSubscriptions';…)对表进行迭代,可以看到哪些表占用了所有的空间。。。;exec sys.sp_spaceused@ObjName=N'Users';