我需要将770个SSRS报表(包括本地模式和Sharepoint模式报表)从2008 R2版本迁移到SSRS 2016版本。哪个工具是最适合进行此SSRS迁移的?我看到了一些工具,如Microsoft Reporting Services Migration、RS脚本等。在这种情况下哪一个最好?请帮忙。
我需要将770个SSRS报表(包括本地模式和Sharepoint模式报表)从2008 R2版本迁移到SSRS 2016版本。哪个工具是最适合进行此SSRS迁移的?我看到了一些工具,如Microsoft Reporting Services Migration、RS脚本等。在这种情况下哪一个最好?请帮忙。
我也在进行类似的SSRS迁移(2008SSRS:2016SSRS
)。您可能需要迁移以下内容:报告、共享数据源、共享数据集、报告订阅。以下是一些工具和流程,它们已经被广泛使用并取得了不错的成功。我包含了相关的Youtube视频、StackOverflow帖子和Microsoft页面链接。
工具:
ReportSync
是一个开源程序,可免费下载和使用。它非常适合批量下载报告,甚至可以将报告从一个服务器推送到另一个服务器。
从Github: Phires/ReportSynch下载源代码文件,运行VS,打开解决方案文件(.SLN),编译程序,从C:\Temp\reportsync-master\bin\Release文件夹中找到可执行文件(.EXE)。最后,在某个地方保存.EXE以供您定期使用。
Export
功能非常适用于简单地将所有RDL文件转储到文件夹中,以便我访问并添加到VS解决方案项目中。有770个报告时,您会非常感激导出选项。
如果我不是报告的所有者,如何将SSRS报告复制到新服务器 --> ReportSync答案由nunespascal提供。
RS Utility
与ssrs_migration.rss
脚本文件类似于ReportSync程序,但是它通过命令行运行并由Microsoft发布。根据我的经验,此实用程序将迁移比ReportSync程序更多的SSRS内容,但我认为它不太容易使用;例如:您不能轻松地挑选要移动的内容(它将源文件夹中的所有内容移动到目标文件夹中)。了解更多信息:
Microsoft文档文章:RS Utility Script To Copy Content Between Report Servers
Stackoverflow链接--> ssrs_migration.rss文件(RS实用程序脚本文件下载),SSRS Migration Sharepoint Integrated to Standalone(RS实用程序脚本文件语法),如何在不还原报告服务器的情况下迁移或复制SSRS数据源(RS实用程序脚本文件下载)。
rs.exe -i ssrs_migration.rss -e Mgmt2010 -s http://gcod049/ReportServer -v ts=http://gcop046/reportserver -v f=”/Data Sources/03-PROD” -v tf=”/Data Sources”
Visual Studio 2015 with SSDT addin
是我首选的环境,用于存储和部署报表文件到报表文件DEV SSRS服务器(.RDL-报表定义,.RSD-共享数据集,.RDS-共享数据源,rptproj-报表项目)。
server url
、ssrs version
、target folder
等)配置SSRS项目。版本控制
将帮助您更加敏捷地处理报表变更请求。这将允许您更改报表文件(.RDL)并快速还原或比较更改。
我使用连接到SVN服务器仓库
的ANKHSVN for Visual Studio
的Visual Studio 2015
我听说过其他SO社区成员推荐Microsoft Azure DevOps Services
流程:
\Decomissioned\SSRS 2008 Migration\
的文件夹中的DEV SSRS服务器。链接:
Youtube:SSW从SQL Server 2008 R2迁移SSRS报表到2016年-->此视频引用了一个看起来很有趣但我还没有尝试过的工具...SSW:SQL Reporting Services Auditor
我在这篇文章中回答了类似的问题--从SSRS 2012迁移到SSRS 2017。
您不需要迁移工具 - 手动执行步骤相当容易
迁移过程:
1)从SSRS配置管理器中导出加密密钥
2)回滚ReportServer和ReportServerTempDB数据库
3)将这些文件复制到新环境中
4)在新节点上安装SQL Server和SSRS
5)将两个报告数据库恢复到新节点上
6)启动新的SSRS服务,连接到“现有”的新创建的数据库
7)将旧的加密密钥导入新的SSRS配置管理器中
8)手动编辑ReportServer.dbo.Keys表,删除旧节点的记录-消除“此版本的Reporting Services不支持“扩展部署”功能。 (rsOperationNotSupported)”-错误。我认为您也可以使用“Scale-out deployment”菜单项从Config Manager GUI中删除它。
9)从Config Manager强制创建ReportManager和Reports URL的默认Web服务
然后,您将拥有一个完整的已迁移节点。根据您的SQL Server版本,您可能还需要单独安装最新的Report Manager。
最近迁移了2008 >> 2017,没有太多的麻烦。
希望这可以帮到你。
ReportingServicesTools PowerShell模块也可以帮助,如果您熟悉PowerShell的话。
但是我在使用它将从SSRS 2008R2服务器提取的数据源推送到新的SSRS 2016服务器时没有成功(例如,使用Write-RsFolderContent cmdlet),可能是因为这些数据源中大多数都有密码,并且两个服务器没有共同的加密密钥(例如,来自SSRS 2008R2服务器的密钥未被提取然后应用于SSRS 2016服务器)。这只是一个猜测。
不过,Write-RsFolderContent可以推送一个包含报告.RDL文件的目录。
Microsoft已经很好地记录了“将旧数据库还原到新的SSRS服务器”场景。请注意,这是一种1:1的迁移。
如果新服务器上的AD用户/角色与旧服务器不同,您可能需要先在旧的SSRS实例中设置它们(糟糕)。如果可以的话,这将节省一些时间和困惑。否则,ReportingServicesTools中的cmdlet也可以直接在数据库中调整。
请参考微软页面获取所有详细信息,特别是在进行SharePoint模式迁移时。以下仅为最近记忆中进行“本地”安装/迁移方案的摘要:
请注意,存储的报告RDL不会升级到新的SSRS 2016命名空间,但它们应该仍然在SSRS 2016兼容模式下运行。
除了使用VS 2015/2017中的SSDT之外,是否有一种好的批量方式将RDL升级到新的命名空间?如果没有,那么请使用VS 2015/2017工具...
从VS2015/2017 SSDT项目中,项目顶层文件夹中的RDL将被转换为SSRS 2016 RDL文件。
部署的是在构建报告之后位于/bin/[Debug|Debug Local|Release]文件夹中的RDLs。