我在SQL Server 2008 R2 Reporting Services中偶尔会收到以下错误。我有大约25个订阅,每晚都在接近午夜,有几次他们都没有遇到这个错误。我不确定它是不是红鲱鱼但是我昨晚10点左右杀死了大部分连接(这个服务器的90%连接来自SSRS,其中大部分都是ReportServer数据库)并没有发生错误几个小时。这是一个相对较新的安装,但是当我从旧服务器迁移时我没有调整任何东西,因此我不知道为什么会发生这种情况。我可以通过增加最大池大小并杀死未使用的连接来解决它,但我宁愿不这样做。
错误:抛出Microsoft.ReportingServices.Diagnostics.Utilities.DataSourceOpenException:,Microsoft.ReportingServices.Diagnostics.Utilities.DataSourceOpenException:无法创建与数据源“MyDB”的连接。 ---> System.InvalidOperationException:超时已过期。从池中获取连接之前经过的超时时间。这可能是因为所有池连接都在使用中并且达到了最大池大小。
似乎问题是连接没有被重用,只能通过SSRS,而不是其他应用程序访问服务器。为什么会这样?
答案 0 :(得分:0)
由于您拥有数据驱动的订阅,因此需要考虑几件事情。
尝试错开计划运行的时间,以便他们不会同时竞争资源。
调整数据驱动订阅的查询超时(这可能是您的主要问题)。报告和订阅都有自己独立的超时设置。