繁体   English   中英

Microsoft SSRS 2012 报表管理器 - HTTP 500 错误(网站无法显示页面),而报表服务器正常

[英]Microsoft SSRS 2012 Report Manager - HTTP 500 error (The website cannot display the page),while Report Server fine

我有一种情况,我的 Microsoft SSRS 2012 报表服务器工作正常,但报表管理器不能正常工作,它会引发 HTTP 500 错误(网站无法显示页面)。

SSRS 2012 报表管理器和报表服务器一直运行良好,直到昨天我成功安装了带有 SSRS 的 SQL Server 2016; SSRS 2016 报表服务器和报表管理器都很好; 我的 SSRS 2008R2 报表服务器和报表管理器也是如此。 (在成功安装 SSRS 2016 之前,我让 SSRS 2008R2 和 SSRS 2012 工作正常;现在 SSRS 2012 的报告管理器部分无法正常工作,其他保持不变)

我认为 SQL Server 2012 是在将近一年前作为默认实例安装的。


来自 SSRS 2012 Reporting Services 配置管理器的详细信息:

服务帐户:使用内置帐户 (ReportServer$SQL2012DEV)


来自 SSRS 2016 和 SSRS 2008R2 Reporting Services 配置管理器的详细信息:

服务帐号:使用内置帐号(网络服务)


我有 Reporting Services 配置管理器的屏幕截图。 在此处输入图片说明

以下是 SQL Server 配置管理器的屏幕截图: 在此处输入图片说明

这是取自事件查看器-Windows 日志-应用程序:源 ASP.NET 2.0.50727.0

 Failed to initialize the AppDomain:ReportManager_SQL2012DEV_0 Exception: System.Web.HttpException Message: Could not load file or assembly 'Microsoft.ReportingServices.SharePoint.ObjectModel, Version=13.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040) StackTrace: at System.Web.Compilation.BuildManager.ReportTopLevelCompilationException() at System.Web.Compilation.BuildManager.EnsureTopLevelFilesCompiled() at System.Web.Compilation.BuildManager.CallAppInitializeMethod() at System.Web.Hosting.HostingEnvironment.Initialize(ApplicationManager appManager, IApplicationHost appHost, IConfigMapPathFactory configMapPathFactory, HostingEnvironmentParameters hostingParameters) at System.Web.Hosting.HostingEnvironment.Initialize(ApplicationManager appManager, IApplicationHost appHost, IConfigMapPathFactory configMapPathFactory, HostingEnvironmentParameters hostingParameters) at System.Web.Hosting.ApplicationManager.CreateAppDomainWithHostingEnvironment(String appId, IApplicationHost appHost, HostingEnvironmentParameters hostingParameters) at System.Web.Hosting.ApplicationManager.CreateAppDomainWithHostingEnvironmentAndReportErrors(String appId, IApplicationHost appHost, HostingEnvironmentParameters hostingParameters) InnerException: System.Configuration.ConfigurationErrorsException Message: Could not load file or assembly 'Microsoft.ReportingServices.SharePoint.ObjectModel, Version=13.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040) StackTrace: at System.Web.Configuration.CompilationSection.LoadAssemblyHelper(String assemblyName, Boolean starDirective) at System.Web.Configuration.CompilationSection.LoadAllAssembliesFromAppDomainBinDirectory() at System.Web.Configuration.CompilationSection.LoadAssembly(AssemblyInfo ai) at System.Web.Configuration.AssemblyInfo.get_AssemblyInternal() at System.Web.Compilation.BuildManager.GetReferencedAssemblies(CompilationSection compConfig) at System.Web.Compilation.BuildProvidersCompiler..ctor(VirtualPath configPath, Boolean supportLocalization, String outputAssemblyName) at System.Web.Compilation.ApplicationBuildProvider.GetGlobalAsaxBuildResult(Boolean isPrecompiledApp) at System.Web.Compilation.BuildManager.CompileGlobalAsax() at System.Web.Compilation.BuildManager.EnsureTopLevelFilesCompiled() InnerException: System.IO.FileLoadException Message: Could not load file or assembly 'Microsoft.ReportingServices.SharePoint.ObjectModel, Version=13.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040) StackTrace: at System.Reflection.Assembly._nLoad(AssemblyName fileName, String codeBase, Evidence assemblySecurity, Assembly locationHint, StackCrawlMark& stackMark, Boolean throwOnFileNotFound, Boolean forIntrospection) at System.Reflection.Assembly.InternalLoad(AssemblyName assemblyRef, Evidence assemblySecurity, StackCrawlMark& stackMark, Boolean forIntrospection) at System.Reflection.Assembly.InternalLoad(String assemblyString, Evidence assemblySecurity, StackCrawlMark& stackMark, Boolean forIntrospection) at System.Reflection.Assembly.Load(String assemblyString) at System.Web.Configuration.CompilationSection.LoadAssemblyHelper(String assemblyName, Boolean starDirective) InnerException: System.IO.FileLoadException Message: Could not load file or assembly 'Microsoft.ReportingServices.SharePoint.ObjectModel' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040) StackTrace:

这取自 SSRS 日志:C:\\Program Files\\Microsoft SQL Server\\MSRS11.SQL2012DEV\\Reporting Services\\LogFiles\\ReportingServerService.txt

 WRN: Assembly binding logging is turned OFF. To enable assembly bind failure logging, set the registry value [HKLM\\Software\\Microsoft\\Fusion!EnableLog] (DWORD) to 1. Note: There is some performance penalty associated with assembly bind failure logging. To turn this feature off, remove the registry value [HKLM\\Software\\Microsoft\\Fusion!EnableLog]. at System.Reflection.Assembly._nLoad(AssemblyName fileName, String codeBase, Evidence assemblySecurity, Assembly locationHint, StackCrawlMark& stackMark, Boolean throwOnFileNotFound, Boolean forIntrospection) at System.Reflection.Assembly.InternalLoad(AssemblyName assemblyRef, Evidence assemblySecurity, StackCrawlMark& stackMark, Boolean forIntrospection) at System.Reflection.Assembly.InternalLoad(String assemblyString, Evidence assemblySecurity, StackCrawlMark& stackMark, Boolean forIntrospection) at System.Reflection.Assembly.Load(String assemblyString) at System.Web.Configuration.CompilationSection.LoadAssemblyHelper(String assemblyName, Boolean starDirective) --- End of inner exception stack trace --- at System.Web.Configuration.CompilationSection.LoadAssemblyHelper(String assemblyName, Boolean starDirective) at System.Web.Configuration.CompilationSection.LoadAllAssembliesFromAppDomainBinDirectory() at System.Web.Configuration.CompilationSection.LoadAssembly(AssemblyInfo ai) at System.Web.Configuration.AssemblyInfo.get_AssemblyInternal() at System.Web.Compilation.BuildManager.GetReferencedAssemblies(CompilationSection compConfig) at System.Web.Compilation.BuildProvidersCompiler..ctor(VirtualPath configPath, Boolean supportLocalization, String outputAssemblyName) at System.Web.Compilation.ApplicationBuildProvider.GetGlobalAsaxBuildResult(Boolean isPrecompiledApp) at System.Web.Compilation.BuildManager.CompileGlobalAsax() at System.Web.Compilation.BuildManager.EnsureTopLevelFilesCompiled() --- End of inner exception stack trace --- at System.Web.Compilation.BuildManager.ReportTopLevelCompilationException() at System.Web.Compilation.BuildManager.EnsureTopLevelFilesCompiled() at System.Web.Compilation.BuildManager.CallAppInitializeMethod() at System.Web.Hosting.HostingEnvironment.Initialize(ApplicationManager appManager, IApplicationHost appHost, IConfigMapPathFactory configMapPathFactory, HostingEnvironmentParameters hostingParameters) at System.Web.Hosting.HostingEnvironment.Initialize(ApplicationManager appManager, IApplicationHost appHost, IConfigMapPathFactory configMapPathFactory, HostingEnvironmentParameters hostingParameters) at System.Web.Hosting.ApplicationManager.CreateAppDomainWithHostingEnvironment(String appId, IApplicationHost appHost, HostingEnvironmentParameters hostingParameters) at System.Web.Hosting.ApplicationManager.CreateAppDomainWithHostingEnvironmentAndReportErrors(String appId, IApplicationHost appHost, HostingEnvironmentParameters hostingParameters) at System.Web.Hosting.ApplicationManager.GetAppDomainWithHostingEnvironment(String appId, IApplicationHost appHost, HostingEnvironmentParameters hostingParameters) at System.Web.Hosting.ApplicationManager.CreateObjectInternal(String appId, Type type, IApplicationHost appHost, Boolean failIfExists, HostingEnvironmentParameters hostingParameters) at System.Web.Hosting.ApplicationManager.CreateObject(String appId, Type type, String virtualPath, String physicalPath, Boolean failIfExists, Boolean throwOnError) at ReportingServicesHttpRuntime.RsHttpRuntime.Create(RsAppDomainType type, String vdir, String pdir, Int32& domainId) --- End of inner exception stack trace ---; appdomainmanager!ReportManager_0-29!3c3c!03/09/2017-14:41:13:: i INFO: Appdomain:31 ReportManager_SQL2012DEV_0-29-131335242724582365 unloading library!DefaultDomain!3c3c!03/09/2017-14:41:13:: e ERROR: Throwing Microsoft.ReportingServices.Diagnostics.Utilities.ReportServerAppDomainManagerException: Failed to create Report Server HTTP Runtime, Microsoft.ReportingServices.Diagnostics.Utilities.ReportServerAppDomainManagerException: An error occurred when attempting to start the application domain ReportManager within the Report Server service. ---> Microsoft.ReportingServices.Diagnostics.Utilities.ReportServerHttpRuntimeInternalException: An internal or system error occurred in the HTTP Runtime object for application domain ReportManager_SQL2012DEV_0. ---> System.Web.HttpException: Could not load file or assembly 'Microsoft.ReportingServices.SharePoint.ObjectModel, Version=13.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040) ---> System.Configuration.ConfigurationErrorsException: Could not load file or assembly 'Microsoft.ReportingServices.SharePoint.ObjectModel, Version=13.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040) ---> System.IO.FileLoadException: Could not load file or assembly 'Microsoft.ReportingServices.SharePoint.ObjectModel, Version=13.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040) ---> System.IO.FileLoadException: Could not load file or assembly 'Microsoft.ReportingServices.SharePoint.ObjectModel' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040) --- End of inner exception stack trace ---; rshost!rshost!3c3c!03/09/2017-14:41:13:: e ERROR: Failed to create HttpRuntime 80131500. rshost!rshost!3c3c!03/09/2017-14:41:13:: e ERROR: Failed to get appdomain 80131500, pipeline=0x00000002781A5990. rshost!rshost!3c3c!03/09/2017-14:41:13:: e ERROR: Error state. Internal abort for pipeline=0x00000002781A5990 ... appdomainmanager!DefaultDomain!3240!03/09/2017-14:41:19:: i INFO: Appdomain:31 ReportManager_SQL2012DEV_0-29-131335242724582365 unregistered. rshost!rshost!3240!03/09/2017-14:41:19:: i INFO: Application domain type ReportManager statistics: created: 27, unloaded: 27, failed: 0, timed out: 0.

当在同一环境中安装多个版本的 SSRS 时,我遇到了类似的问题。 在我的系统中,我安装了 SQL 2012、SQL 2014 和 SQL 2016,包括 SSRS 和其他共享功能。

SSRS 2012 实例不包含任何 SharePoint 组件。 但是,SSRS 2012 的报告管理器似乎是从另一个实例中引用它们的。 我是在检查C:\\Program Files\\Microsoft SQL Server\\\\Reporting Services\\LogFiles生成的日志文件时了解到它的。

解决方案:

我已经验证了所有已安装的 SQL 实例特定组件和共享组件。

我发现 SQL 2012 和 SQL 2014 实例不包含任何与 SharePoint 相关的组件。 但是,SQL 2016 实例包含很少的与 SharePoint 相关的共享组件。 它们是“用于 SharePoint 的 Microsoft SQL Server 2016 RS 加载项”“Reporting Services - SharePoint”

在控制面板的程序和功能下,我卸载了“Microsoft SQL Server 2016 RS Add-in for SharePoint”组件。 我停止并重新启动了 2012 和 2016 实例的 SSRS 服务。 此后,SSRS 2012 的报表管理器仍然无法正常工作。

接下来,在控制面板的程序和功能下,我选择了“ Microsoft SQL Server 2016 (64-bit) ”,然后选择了卸载/更改,然后选择了删除。 通过导航,我进入了“选择功能”页面。 在共享功能下,我选中了“Reporting Services - SharePoint”并继续将其删除。

完成后,我重新启动了 SQL 2012 和 2016 实例的 SSRS 服务。 在此之后,2012 年和 2016 年实例的两个 SSRS 站点都按预期工作。 所以我的问题解决了。

我仍然不清楚为什么包含 SQL 2016 实例的设置或功能会影响 SQL 2012 实例。

从文件中删除以下标签后,它才起作用:-

机器配置文件

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM