Migrate A Reporting Services
Migrate A Reporting Services
Services Installation
(Native Mode)
SQL Server 2014
Tip
A side-by-side installation may require that you install SQL Server 2014 as a named instance.
Move the report server database and other application files from your existing
installation to your new SQL Server 2014 installation.
Move any custom application files to the new installation.
Configure the report server.
Edit RSReportServer.config to include any custom settings from your previous
installation.
Optionally, configure custom Access Control Lists (ACLs) for the new Reporting
Services Windows service group.
Remove unused applications and tools after you have confirmed that the new
instance is fully operational.
There are restrictions on the editions of SQL Server that host the report server database.
Review the following topic if you are reusing a report server database that was created in
a previous installation.
Create a Report Server Database (SSRS Configuration Manager)
Top
Write a Visual Basic script that calls Report Server Web service SOAP methods to
copy data between databases. You can use the RS.exe utility to run the script. For
more information about this approach, see Scripting (Reporting Services SSRS).
Write code that calls the WMI provider to copy data between databases. For more
information about this approach, see Access the Reporting Services WMI Provider.
If you have just a few items, you can republish reports, report models, and shared
data sources from Report Designer, Model Designer, and Report Builder to the
new report server. You must re-create role assignments, subscriptions, shared
schedules, report snapshot schedules, custom properties that you set on reports
or other items, model item security, and properties that you set on the report
server. You will lose report history and report execution log data.
Top
If you use custom cascading style sheets in your reporting environment, they will
not be migrated. You must manually move them following migration.
For more information about changes in SQL Server 2014 Reporting Services, see the
Upgrade Advisor documentation and What's New (Reporting Services).
Top
2. Start SQL Server Management Studio and connect to the Database Engine.
3. Create the RSExecRole in the system databases if the Database Engine has
never hosted a report server database. For more information, see Create the
RSExecRole.
4. Follow the instructions in Moving the Report Server Databases to Another
Computer (SSRS Native Mode).
Remember that both the report server database and the temporary database are
interdependent and must be moved together. Do not copy the databases; copying does
not transfer all of the security settings to the new installation. Do not move SQL Server
Agent jobs for scheduled report server operations. The report server will recreate these
jobs automatically.
Top
Important
If any of the report servers in the scale-out deployment are online and have not been migrated, they might en
rsInvalidReportServerDatabase exception because they are using an older schema when connected to the up
Note
If the report server you migrated was configured as the shared database for a scale-out deployment, you need
encryption keys from the Keys table in the ReportServer database, before configuring the report server serv
the migrated report server will try to initialize in scale-out deployment mode. For more information, see Add
for Scale-Out Deployment (SSRS Configuration Manager) and Configure and Manage Encryption Keys (SS
The scale-out keys cannot be deleted by using the Reporting Services Configuration Manager. The old keys
the Keys table in theReportServer database using SQL Server Management Studio. Delete all rows in the K
table and prepare it for restoring the Symmetric key only, as documented in the following steps.
Prior to deleting the keys it is recommended you first back up the Symmetric Encryption key. You can use th
Configuration Manager to back up the key. Open the Configuration Manager open, click the Encryption Ke
the Backup button. You can also script WMI commands to back up the encryption key. For more informatio
see BackupEncryptionKey Method (WMI MSReportServer_ConfigurationSetting).
1. Start the Reporting Services Configuration Manager and connect to the Reporting
Services instance you just installed. For more information, seeReporting Services
Configuration Manager (Native Mode).
2. Configure URLs for the report server and Report Manager. For more information,
see Configure a URL (SSRS Configuration Manager).
3. Configure the report server database, selecting the existing report server
database from your previous installation. After successful configuration, the report
server services will restart, and once a connection is made to the report server
database, the database will be automatically upgraded to SQL Server
2014 Reporting Services. For more information about how to run the Change
Database Wizard that you use to create or select a report server database,
see Create a Native Mode Report Server Database (SSRS Configuration Manager).
4. Restore the encryption keys. This step is necessary for enabling reversible
encryption on pre-existing connection strings and credentials that are already in
the report server database. For more information, see Back Up and Restore
Reporting Services Encryption Keys.
5. If you installed report server on a new computer and you are using Windows
Firewall, be sure that the TCP port on which the report server listens is open. By
default, this port is 80. For more information, see Configure a Firewall for Report
Server Access.
6. If you want to administer your native mode report server locally, you need to
configure the operating system to allow local administration with Report Manager.
For more information, see Configure a Native Mode Report Server for Local
Administration (SSRS).
Top
Customization
Information
Top
o RsExec role
o Report Server service accounts
o Application pool for the Report Server Web service
o Virtual directories for Report Manager and the report server
o Report server log files
2. Remove IIS if you no longer need it on this computer.
You can move the report server databases that are used in an installation SQL
Server Database Engine to an instance that is on a different computer. Both
thereportserver and reportservertempdb databases must be moved or copied together. A
Reporting Services installation requires both databases; thereportservertempdb database
must be related by name to the primary reportserver database you are moving.
Applies to:Reporting Services Native mode.
Moving a database does not effect scheduled operations that are currently defined for
report server items.
Schedules will be recreated the first time that you restart the Report Server
service.
SQL Server Agent jobs that are used to trigger a schedule will be recreated on the
new database instance. You do not have to move the jobs to the new computer,
but you might want to delete jobs on the computer that will no longer be used.
moved, clear the snapshot options in Report Manager, click Apply to save your
changes, re-create the schedule, and click Apply again to save your changes.
Temporary report and user session data that is stored in reportservertempdb are
persisted when you move that database.
SQL Server provides several approaches for moving databases, including backup and
restore, attach and detach, and copy. Not all approaches are appropriate for relocating an
existing database to a new server instance. The approach that you should use to move
the report server database will vary depending on your system availability requirements.
The easiest way to move the report server databases is to attach and detach them.
However, this approach requires that you take the report server offline while you detach
the database. Backup and restore is a better choice if you want to minimize service
disruptions, but you must run Transact-SQL commands to perform the operations.
Copying the database is not recommended (specifically, by using the Copy Database
Wizard); it does not preserve permission settings in the database.
Important
The steps provided in this topic are recommended when relocating the report server database is the only cha
installation. Migrating an entire Reporting Services installation (that is, moving the database and changing th
Windows service that uses the database) requires connection reconfiguration and an encryption key reset.
4. Right-click the report server database, point to Tasks, and click Detach. Repeat
this step for the report server temporary database.
5. Copy or move the .mdf and .ldf files to the Data folder of the SQL Server instance
you want to use. Because you are moving two databases, make sure that you
move or copy all four files.
6. In Management Studio, open a connection to the new SQL Server instance that
will host the report server databases.
7. Right-click the Databases node, and then click Attach.
8. Click Add to select the report server database .mdf and .ldf files that you want to
attach. Repeat this step for the report server temporary database.
9. After the databases are attached, verify that the RSExecRole is a database role
in the report server database and temporary database. RSExecRole must have
select, insert, update, delete, and reference permissions on the report server
database tables, and execute permissions on the stored procedures. For more
information, see Create the RSExecRole.
10. Start the Reporting Services Configuration tool and open a connection to the
report server.
11. On the Database page, select the new SQL Server instance, and then
click Connect.
12. Select the report server database that you just moved, and then click Apply.
13. On the Encryption Keys page, click Restore. Specify the file that contains the
backup copy of the keys and the password to unlock the file.
14. Restart the Report Server service.
-- To permit log backups, before the full database backup, alter the
database
-- to use the full recovery model.
USE master;
GO
ALTER DATABASE ReportServer
SET RECOVERY FULL
-- If the ReportServerData device does not exist yet, create it.
USE master
GO
EXEC sp_addumpdevice 'disk', 'ReportServerData',
'C:\Program Files\Microsoft SQL
Server\MSSQL12.MSSQLSERVER\MSSQL\BACKUP\ReportServerData.bak'
-- Create a logical backup device, ReportServerLog.
USE master
GO
EXEC sp_addumpdevice 'disk', 'ReportServerLog',
'C:\Program Files\Microsoft SQL
Server\MSSQL12.MSSQLSERVER\MSSQL\BACKUP\ReportServerLog.bak'
-- Back up the full ReportServer database.
BACKUP DATABASE ReportServer
TO ReportServerData
WITH COPY_ONLY
-- Back up the ReportServer log.
BACKUP LOG ReportServer
TO ReportServerLog
WITH COPY_ONLY
-- To permit log backups, before the full database backup, alter the
database
-- to use the full recovery model.
USE master;
GO
ALTER DATABASE ReportServerTempdb
SET RECOVERY FULL
-- If the ReportServerTempDBData device does not exist yet, create it.
USE master
GO
EXEC sp_addumpdevice 'disk', 'ReportServerTempDBData',
'C:\Program Files\Microsoft SQL
Server\MSSQL11.MSSQLSERVER\MSSQL\BACKUP\ReportServerTempDBData.bak'
-- Create a logical backup device, ReportServerTempDBLog.
USE master
GO
EXEC sp_addumpdevice 'disk', 'ReportServerTempDBLog',
'C:\Program Files\Microsoft SQL
Server\MSSQL11.MSSQLSERVER\MSSQL\BACKUP\ReportServerTempDBLog.bak'
DISK='C:\ReportServerData.bak';
The following examples include the FILE argument so that you can specify the file
position of the log file to restore. To find the file position, execute the following
statement: RESTORE HEADERONLY FROM DISK='C:\ReportServerData.bak';
When restoring the database and log files, you should run each RESTORE operation
separately.
-- Restore the report server database and move to new instance folder
RESTORE DATABASE ReportServer
FROM DISK='C:\ReportServerData.bak'
WITH NORECOVERY,
MOVE 'ReportServer' TO
'C:\Program Files\Microsoft SQL
Server\MSSQL11.MSSQLSERVER\MSSQL\Data\ReportServer.mdf',
MOVE 'ReportServer_log' TO
'C:\Program Files\Microsoft SQL
Server\MSSQL11.MSSQLSERVER\MSSQL\Data\ReportServer_Log.ldf';
GO
-- Restore the report server log file to new instance folder
RESTORE LOG ReportServer
FROM DISK='C:\ReportServerData.bak'
WITH NORECOVERY, FILE=2
MOVE 'ReportServer' TO
'C:\Program Files\Microsoft SQL
Server\MSSQL11.MSSQLSERVER\MSSQL\Data\ReportServer.mdf',
MOVE 'ReportServer_log' TO
5. In Database Name, select the report server database that you want to use.
Click Next.
6. In Credentials, specify the credentials that the report server will use to connect to
the report server database. Click Next.
7. Click Next and then Finish