无法在SSRS中创建与数据源错误(rsErrorOpeningConnection)的连接

问题描述 投票:18回答:10

我正在努力将报告集成到浏览器中,我收到此错误:

An error has occurred during report processing. (rsProcessingAborted)
Cannot create a connection to data source 'dsFederatedSample_SurveyLevel_STG'. (rsErrorOpeningConnection)
For more information about this error navigate to the report server on the local server machine, or enable remote errors

这与SQL与Windows身份验证有关吗?

reporting-services ssrs-2008 database-connection
10个回答
15
投票

我要尝试的第一件事是获得有关错误的更多信息 - 这是一个非常通用的消息。

您可以根据错误消息启用远程错误并复制错误以获取更多信息:

Enable remote errors

或者检查报表服务器错误日志以查看记录的错误。

%programfiles%\Microsoft SQL Server\<SQL Server Instance>\Reporting Services\LogFiles\

下一步是作为数据源用户连接到数据库,运行报告正在使用的任何代码/存储过程,使用与运行报告时使用的相同参数,并查看是否发生任何错误。


-2
投票

我通过确保您的数据源没有空格来修复此错误Ex:Datasource = JOHN;初始目录= AdventureWorks


4
投票

在SQL Server 2008中,除上述两个选项外,还有第三个选项可通过SQL Server Management Studio进行此设置。

1.启动Management Studio并连接到报表服务器实例。

2.右键单击ReportServer数据库并选择“属性”

3.单击“高级”

4.在EnableRemoteErrors中,选择True。

5.单击“确定”。


3
投票

我在Windows 8.1,SQL Server 2014 Developer Edition和Visual Studio 2013 Pro上遇到了同样的问题“无法创建与数据源的连接...用户登录失败..”。其他Stackoverflow社区成员提供的所有解决方案都不适用于我。

所以,我做了接下来的步骤(以管理员身份运行所有Windows应用程序):

  1. VS2013 SSRS:我在右窗格“解决方案资源管理器”中使用Windows身份验证(集成安全性)将我的数据源转换为共享数据源(.rds)。
  2. 原始(非共享)数据源(在左窗格“报告数据”上)获得“不使用凭据”。
  3. 在Project Properties上,我将“Deployment”“Overwrite DataSources”设置为“True”并重新部署Project。

enter image description here

之后,我可以在没有进一步要求的情况下运行我的报告来输入凭据。所有共享数据源都部署在单独的目录“DataSources”中。

enter image description here

enter image description here


2
投票

问题是因为您的数据源设置不正确,请执行此操作以验证您的数据源连接,以便首先导航到Report Service Configuration Manager

单击开始 - >全部启动 - > Microsoft SQL Server - >配置工具 - >“报告服务配置管理器”

打开报表管理器URL,然后导航到“数据源”文件夹,请参见下图

然后通过右键单击数据库源创建数据源或配置已存在的数据源,并选择“管理”,如下所示

现在,在左侧菜单的属性选项卡上,使用您的连接字符串和用户名和密码填写数据源,然后单击测试连接,如果连接成功,则单击“应用”

在这种情况下,导航到包含报告的文件夹“SurveyLevelReport”

最后将报告设置为先前设置的数据源,然后单击“应用”


2
投票

如果在存储过程中使用空值,则需要将参数设置为接受空值。这对我有用。


1
投票

就我而言,我在一个报告中有许多不同的数据集到DB和Analysis Services Cube。看起来这些数据集相互阻塞并产生了这样的错误。对我来说,在CUBE数据源属性中帮助选项“在处理查询时使用单个事务”


1
投票

更多信息将非常有用。

当我遇到相同的错误消息时,我所要做的就是正确配置DataSource的凭据页面(我正在使用Report Builder 3)。如果您选择了默认值,则报表在报表生成器中可以正常工作,但在报表服务器上会失败。

您可以在此处查看此修复程序的更多详细信息:https://hodentekmsss.blogspot.com/2017/05/fix-for-rserroropeningconnection-in.html


1
投票

在我的情况下,这是因为我在本地开发报告时在我的数据源中使用了集成Windows身份验证,但是一旦他们将其发送到报表管理器,由于站点未正确传递我的凭据,因此身份验证被破坏。

  • 简单的解决方法是将用户名/密码硬编码到数据源中。
  • 更难的解决方法是通过报表管理器正确模拟/委托您的Windows凭证到基础数据源。

1
投票

我有一个类似的问题,作为新手,我花了一段时间才弄明白,但我了解到用户必须登录SSMS。我使用以下参数创建了登录:

  • 在服务器角色下 - 检查sysadmin
  • 在用户映射下 - 我选择了数据库和报表服务器。对于每个我检查过的datareader和datawriter
  • 在Securables下 - 我检查了任何允许用户连接到数据库并查看任何内容的内容
  • 我还发现其中一个现有登录已经检查了denydatareader和denydatawriter。一旦我删除它们就行了。

我不是说这是最好的方式,只是对我有用。希望这可以帮助

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