报表服务器无法连接到其数据库

问题描述 投票:0回答:5

我正在尝试配置 SSRS 实例,但收效甚微。

我已在服务器 DWHFRONT 上安装了 SSRS。它在网络服务凭据下运行。在 Reporting Services 配置管理器的“数据库”选项卡上,我将其设置为使用 DWHBACK 上的数据库,该数据库已成功创建。连接使用域帐户 DOM\SA_DWH。我已为 DOM\SA_DWH 添加了到服务器 DWHBACK 的登录名,并且我可以看到 Reporting Services Manager 添加了对 SSRS 数据库的授权。配置管理器接受这些连接参数。

但是(在设置 URL、虚拟目录等之后)如果我访问 DWHFRONT/Reports/ 的 URL,我会收到一条错误消息:

服务不可用。

报表服务器配置不正确。请联系您的系统管理员来解决该问题。系统管理员:报表服务器无法连接到其数据库,因为它没有这样做的权限。使用 Reporting Services 配置管理器更新报表服务器数据库凭据。

起初我认为这可能是一个问题,因为尚未部署到 SSRS 实例。然而,当我尝试部署某些内容时,我在 BIDS 中收到此错误:

报表服务器无法打开与报表服务器数据库的连接。所有请求和处理都需要与数据库的连接。 ---> Microsoft.ReportingServices.Library.ReportServerDatabaseUnavailableException: 报表服务器无法打开与报表服务器数据库的连接。所有请求和处理都需要与数据库的连接。 (微软.ReportingServices.Designer)

sql-server reporting-services
5个回答
5
投票
  1. 检查 SQL 日志是否有任何错误
  2. 在 SQL Server 上运行 SQL 配置文件以捕获任何连接/权限错误
  3. 尝试重新输入域帐户的权限
  4. 检查域帐户是否被禁用/锁定/密码过期
  5. 尝试在连接报表服务器数据库的同一 AD 帐户下运行 SSRS 服务。
  6. 尝试在两台服务器上启用命名管道(协议和客户端协议)
  7. 尝试删除加密密钥并重新创建它们。
  8. 尝试另一个域用户并检查所有数据库(ReportServer、ReportServer Temp、msdb)中授予的权限,检查每个数据库中的数据库用户是否映射到有效的 SID)
  9. 尝试授予该 AD 帐户的 SQL Server 系统管理员权限(临时)。
  10. 检查 SSRS 日志是否有任何错误(最好附上它们)。
  11. 检查事件查看器 --> 安全性 --> SQL Server 审核失败

0
投票

您可以执行以下测试来检查它能否解决您的问题吗?:

  1. 添加具有临时高权限的帐户 [DOM\DWHFRONT$],例如 SYSADMIN 到 SQL 实例 DWHBACK(SA 是一个临时措施,测试后删除)
  2. 将 SSRS 服务帐户更改为:“本地系统”
  3. 重新创建 ReportServer 数据库并选择凭据:“服务凭据”

附注我们在网络服务凭据下运行最新版本的 SSRS 时遇到问题..


0
投票

这听起来很像“双跳”问题。

这可以通过在 Reporting Services 实例上启用远程错误来确认。然后,当您连接到报告门户时,您应该会看到原始错误以及“用户 NTAUTHORITY\ANONYMOUS LOGON 登录失败”。如果是这样,那么这很可能是 Kerberos 委派问题。

当您将 SSRS 服务和目标数据库托管在不同的服务器上时,您几乎总是会遇到“双跳”问题,这将需要配置 Kerberos 委派以使 SSRS 能够重用用户凭据来跨服务器访问数据库.

Pinal Dave 在 SQL Server 的背景下写了一篇关于此的精彩博客。

要启用委派,您首先需要确保正确配置 SPN。 Here 是一个很好的实用程序来帮助解决这个问题。我将在您的 SSRS 服务器和数据库服务器上运行此命令,以确保两台服务器的 SPN 均配置正确。

配置 SPN 后,您需要在 Active Directory 中“启用委派”。这需要为您的 DOM\SA_DWH 帐户完成。


0
投票

域帐户 SA_DWH 被禁止交互式登录。 SSRS 显然确实需要这样做。交互式登录限制已解除,现在可以使用了。


0
投票

为了解决该问题,我执行了以下步骤。

转到配置管理器上的数据库选项卡,单击“更改数据库”并继续执行步骤。这会将正确的数据库角色分配给服务帐户。
  1. 我必须使用密码恢复加密密钥,这是我第一次配置 SSRS 时备份的。
  2. 启动和停止服务。
  3. 这解决了我的问题。

© www.soinside.com 2019 - 2024. All rights reserved.