Learn more about SQL Server tools

solving sql server problems for millions of dbas and developers since 2006
join MSSQLTips for free SQL Server tips














































Migrating SQL Reporting Services to a new server

MSSQLTips author Dale Kelly By:   |   Read Comments (32)   |   Related Tips: 1 | 2 | > Reporting Services Migration
Problem

I have some SQL Server 2005 Reporting Servers that have many reports, data sources and subscriptions loaded on them. My company is in the process of moving from SQL 2005 to SQL 2008 and 2008 R2. I need to move all the objects off the 2005 Reporting Server to the 2008 Reporting Server. Is there an easy way to do this without saving each report file (edit report and save .rdl) then uploading the report to the new server? This would also mean recreating the data sources and subscriptions. In our case there are many authors and reports are not managed in any formal way so getting the original reports will be extremely difficult.

Solution

I started looking at this task and at first was a little overwhelmed. I did not know of any easy way to move hundreds of reports, data sources and subscriptions from one server to another. I knew I could save each report as an .rdl then upload it to the new server but that would still leave all the data sources and subscriptions. I thought about the number of days it would take me to move the reports and other objects this way so started to look for alternatives. Most of my internet searches returned results that required moving the report server databases from one computer to another (click here to see this process). This approach requires moving encryption keys, moving databases then fixing any issues that may occur as a result. I thought there must be a better way so I kept looking. Then I found a reference to a tool called Reporting Services Scripter. This tool is a .NET Windows forms application that can be used to script out and transfer all SQL Service Reporting Services catalog items. The tool was created by Jasper Smith and can be downloaded here. The download is a single zip file. There is no installation required, just unzip the file to a folder. The tool requires .NET Framework 1.1 and to generate command files or use the Transfer mode the RS.EXE Reporting Services Management Tools command line utility is required.

To use the tool simply double click the RSSCripter.exe file. If presented with an 'Open File - Security Warning' acknowledge the warning by clicking Run and the tool will open.

Reporting Serivces Scripting Tool

Once the tool is open click the Options button to configure the tool for your environment.

Scripting tool Options

Be sure to set the Default Script Directory, this is the location the tool will put the generated script files in. Next click the Servers tab to add your reporting servers to the grid. The first column is just a label and can be anything you like, but it must be unique. The second column is the actual link to the reporting server and should be of the form http://servername/Reportserver/ReportService.asmx for SQL 2000 servers and http://servername/Reportserver/ReportService2005.asmx for SQL 2005 and 2008.

Scripting tool Servers grid

I am not going to go through each tab; the tool includes a very good readme that describes all the available options. There are a few things to note. To include report subscriptions click the Report tab and check the Include Subscriptions check box. The Global tab is used to define the location of the RS.EXE file, the database authentication and the scripting mode. Once all options have been set you are ready to run the tool.

First select a server from your server list by clicking the drop down labeled Report Server. Once a server is selected click the Get Catalog button. This will list all the catalog items on the reporting server.

Scripting tool Report server catalog

You can select individual reports by expanding the report folder and selecting the report or select the entire folder. Once you have selected the objects click the Script button and the script files will be generated in the folder selected as the Default Script Directory. The tool will create script files for all objects selected and it will create a command (.cmd) file for loading those objects on a server. In the command file there is a line that sets the URL of the server to script the report objects to, change this line to the server you want to transfer your reports to:

 SET REPORTSERVER=http://servername/ReportServer

Also be sure the line for the location to the RS.EXE file is correct.

 SET RS="C:\Program Files\Microsoft SQL Server\90\Tools\Binn\RS.EXE"

Once the command file has been edited copy all the files to the new reporting server and execute the command file by double clicking the file in Windows 2003 and right clicking and selecting Run As Administrator in Windows 2008. When I used this tool to migrate to the new server 136 items were migrated and it took just a few minutes. When I inspected the new reporting server and compared it to the old all items I ask for were on the new server, intact and functioned the same as on the old server.

Conclusion

This is a good tool that works very well for what it is designed for. It saved me countless hours completing my task in less than an hour. I did not have to worry about encryption keys, security or stuff left over from a previous version like I would have if I had used the move database method.

 

Next Steps


Last Update: 3/19/2012


About the author
MSSQLTips author Dale Kelly
Dale Kelly has been in the computer industry since the late 80s and is currently a Sr. DBA responsible for 26 SQL Servers.

View all my tips


print tip Print  
Become a paid author




Recommended For You








Learn more about SQL Server tools
Comments and Feedback:
Monday, March 19, 2012 - 10:13:09 AM - BobC Read The Tip

A few months ago I used this tool for moving from 2005 to 2008R2.  Worked great!  Highly recommended.


Monday, April 16, 2012 - 4:09:11 AM - PatJ Read The Tip
I used it to move over 600 report and associated datasources, subscriptions etc from a sql 2005 server to sql 2008 and it was brilliant - easy to use and effective. I considered copying the report server database but this was better!

Monday, April 16, 2012 - 12:34:33 PM - LSN Read The Tip

I do like RS Scripter very much, but in the scenario you describe, why wouldn't you just attach your ReportServer db to the new SSRS 2008 instance?  It would have upgraded your db for you and all your reports and other objects would have been just there without additional work.


Monday, April 16, 2012 - 1:06:12 PM - MWise Read The Tip

I moved/upgraded our 2005 report server db just like LSN.  Deattached/Attached and then let Reporting Services upgrade the database.  I think I may have had to export/import the encryption keys, but it was pretty easy as I remember.


Monday, April 16, 2012 - 1:18:51 PM - TL Read The Tip

We've been using this tool for years to migrate reports and datasources between Dev, QA, and Produciton servers.  One important thing to note is that if you use SQL authentication on your data sources with the login and password saved in the datasource, it will NOT move the logins or passwords.  In that case you will have to manually enter the authentication credentials for each datasource (embedded or shared).


Monday, April 16, 2012 - 2:22:28 PM - Mike Read The Tip

 

Agree that RS Scripter is a great tool and we use it all the time to move reports from test to production servers.  But as the previous posters have already said, there is a much simpler way to accomplish the same thing.  The key is to backup your encryption keys first from the 2005 instance.  Then you can backup/restore or dettach/reattach the database, run through the SSRS configuration tool, and restore the encryption keys.  Restart the SSRS service and you're good to go.


Monday, April 16, 2012 - 2:27:09 PM - Mark Read The Tip

How useful is this with Sharepoint Integrated Reporting Solutions?

We're looking at moving our 2008R2 Sharepoint 2010 integrated system to SQL 2012


Wednesday, April 18, 2012 - 1:35:46 AM - Nelson Read The Tip

To migrate the reporting serice to new server ,  I prefer  backup and restore the database and restore the encryption key which is very simple. I have used this tool to consoldiate multiple report server to single server. The other scenario where I have used is when we migrated the database server to a new server , we need to change the data source defined in each rdl file . In this scenario I have downloded all the rdl and data source and replaced old IP address and password with simple find and replace utility and uploaded again

Thanks

Nelson

www.PracticalSqlDba.com


Wednesday, April 18, 2012 - 8:24:22 AM - Dale Read The Tip

Mark;

I do not know if this would work with Sharepoint Integrated reporting, I have not tried it.


Wednesday, October 10, 2012 - 3:11:43 PM - Loch Read The Tip

I have used this tool before for migrating to 2005, i think. Will this work with migrating from 2008 to 2012?


Thursday, October 11, 2012 - 9:04:55 AM - Dale Read The Tip

Loch;

I am not sure, I did not test it for 2012.


Thursday, December 06, 2012 - 12:30:56 PM - Steve Read The Tip

This tools seems pretty nice. Can this be used to create a DRC location setup without losing primary RSDB host?


Friday, December 07, 2012 - 8:03:40 AM - Dale Read The Tip

Steve;

I do not know.


Monday, December 10, 2012 - 5:03:06 PM - Rashid Khan Read The Tip

Excellent article.

 

-- Rashid Khan


Wednesday, January 23, 2013 - 11:08:29 PM - Tony Read The Tip

Anyone have any luck with SQL server 2012, I am getting an XML parcing error?


Monday, March 11, 2013 - 6:45:13 AM - Amit Read The Tip

RS Scripter Not wrking with SQL server 2012.


Monday, April 08, 2013 - 2:08:36 PM - mjones Read The Tip

Hello does anyone know where the rsscripter.exe is? It's no longer available on this link. http://www.sqldbatips.com/showarticle.asp?ID=62

Thanks!


Tuesday, April 09, 2013 - 10:02:45 AM - Fedor Read The Tip

Where it is NOW ???????????


Tuesday, April 09, 2013 - 11:12:41 AM - Greg Robidoux Read The Tip

Hi @mjones and @Fedor

 

It looks like the sqldbatips.com website is not working anymore.  Not sure where this utility can be found.  All searches lead back to this same URL.

We will see if we can track this down somehow.

Regards,
Greg Robidoux


Tuesday, April 09, 2013 - 12:33:26 PM - boskabouter007 Read The Tip

it seems that this great tool is not available for download anymore, can someone send me the tool by mail or a valid url to download it.

 

best regards


Wednesday, April 10, 2013 - 3:29:43 PM - mjones Read The Tip

There is no valid url right now. But if anyone has the files and could zip it up and send that to us that would be awesome!!!


Tuesday, April 23, 2013 - 8:42:46 AM - nov1ce Read The Tip

Thanks for the article!

Can you use this tool to backup reports on a regular basis? I guess I have to use RSScripterCmd.exe?

PS: For those who are still looking for the script -- it could be downloaded from http://www.sqldbatips.com/samples/code/RSScripter/RSScripter.zip


Tuesday, April 23, 2013 - 10:15:30 AM - Dale Read The Tip

Nov1ce;

I suppose you could. I did not think of using it this way.


Tuesday, April 23, 2013 - 11:01:12 AM - mjones Read The Tip

Hey thanks for the link! That worked.


Monday, July 01, 2013 - 4:18:10 PM - James Read The Tip

http://www.sqldbatips.com/samples/code/RSScripter/RSScripter.zip - is broken. can you please let me know if this is moved to a different location?


Monday, July 01, 2013 - 8:06:31 PM - Greg Robidoux Read The Tip

@James - not sure where this went to.   I found this other link, but not sure it is the exact same thing or not.

http://sqlserverfinebuild.codeplex.com/wikipage?title=Install%20Reporting%20Services%20Scripter

 


Tuesday, July 02, 2013 - 1:58:00 PM - Daniel Read The Tip

I setup RS Scripter as described and after I click "Get Catalog", I get error message "The Request failed with HTTP status 403: Forbidden". I understand it's permissions issue, but I tried both Windows and Basic authentication, tried RSExec, NetworkService account, administrator, user's account, still no avail. The encription key expired, but the Reports execute just fine. Would that be a problem?


Wednesday, July 03, 2013 - 11:16:58 AM - Dale Read The Tip

Daniel;

Be sure the user you are trying to connect with has content mangement permissions on the reporting site.


Wednesday, July 24, 2013 - 11:50:45 AM - Derek Robinson Read The Tip

Until it supports shared dataset it's only half a tool.


Monday, January 20, 2014 - 5:56:33 AM - Paluri Read The Tip

Hi All,

We do have reporting services and databases running on sql server 2005.

We are planning to migrate the databases no the reporting services.

ie, reporting services should be on 2005 and databases should be on 2008R2.

Do we have any issues in doing so, any compatibility issues if databases and SSRS on different versions?

Please suggest.


Monday, January 20, 2014 - 1:42:13 PM - Dale Read The Tip

Paluri;

 

You will not be able to connect to the 2005 reporting service through Management Studio and you will not gain the benefits of 2008 reporting services.

Dale


Friday, January 24, 2014 - 3:01:39 PM - Richard Read The Tip

 

I don't see any notes about the reports connecting to the datasource in the new (target) environment. Does this tool connect the reports or does that have to be done one report at a time?

thanks,

Richard



Post a Comment or Question

Keep it clean and stay on the subject or we may delete your comment.
Your email address is not published. Required fields are marked with an asterisk (*)

*Name   *Email Notify for updates

Signup for our newsletter


Comments
*Enter Code refresh code


 
Sponsor Information







Copyright (c) 2006-2014 Edgewood Solutions, LLC All rights reserved
privacy | disclaimer | copyright | advertise | about
authors | contribute | feedback | giveaways | user groups | community | events | first timer?
Some names and products listed are the registered trademarks of their respective owners.