Backup and Restore Operations for Reporting Services
This topic provides an overview of all data files used in a Reporting Services installation and describes when and how you should back up the files. Developing a backup and restore plan for the report server database files is the most important part of a recovery strategy. However, a more comprehensive recovery strategy would include backups of the encryption keys, custom assemblies or extensions, configuration files, and source files for reports and models.
Backup and restore operations are often used to move all or part of a Reporting Services installation:
If you are moving just the report server databases, you can use backup and restore or attach and detach to relocate the databases on a different SQL Server instance. For more information, see Moving the Report Server Databases to Another Computer.
Moving a Reporting Services installation to a new computer is called a migration. When you migrate an installation, you run Setup to install a new report server instance and then copy instance data to the new computer. For more information about migrating a Reporting Services installation, see the following topics:
Backing Up the Report Server Databases
Because a report server is a stateless server, all application data is stored in the reportserver and reportservertempdb databases that run on a SQL Server Database Engine instance. You can backup the reportserver and reportservertempdb databases using one of the supported methods for backing up SQL Server databases. Recommendations that are specific to the report server databases include the following:
Use the full recovery model to backup the reportserver database.
Use the simple recovery model to backup the reportservertempdb database.
You can use different backup schedules for each database. The only reason to backup the reportservertempdb is to avoid having to recreate it if there is a hardware failure. In the event of hardware failure, it is not necessary to recover the data in reportservertempdb, but you do need the table structure. If you lose reportservertempdb, the only way to get it back is to recreate the report server database. If you recreate the reportservertempdb, it is important that it have the same name as the primary report server database.
For more information about backup and recovery of SQL Server relational databases, see Back Up and Restore of SQL Server Databases.
If your SQL Server 2012 report server is in SharePoint mode, there are additional databases to be concerned with, including SharePoint configuration databases and the Reporting Services alerting database. In SharePoint mode, three databases are created for each Reporting Services service application. The reportserver, reportservertempdb, and dataalerting databases. For more information see Backup and Restore Reporting Services Service Applications
Backing Up the Encryption Keys
You should backup the encryption keys when you configure a Reporting Services installation for the first time. You should also backup the keys any time you change the identity of the service accounts or rename the computer. For more information, see Back Up and Restore Reporting Services Encryption Keys (SSRS Native Mode). For SharePoint mode report servers, see the “Key Management” section of Manage a Reporting Services Service Application.
Backing Up the Configuration Files
Reporting Services uses configuration files to store application settings. You should backup the files when you first configure the server and after you deploy any custom extensions. Files to back up include:
Web.config for both the Report Server and Report Manager ASP.NET applications
Machine.config for ASP.NET
Backing Up Data Files
Backup the files that you create and maintain in Report Designer and Model Designer. These include report definition (.rdl) files, report model (.smdl) files, shared data source (.rds) files, data view (.dv) files, data source (.ds) files, report server project (.rptproj) files, and report solution (.sln) files.
Remember to backup any script files (.rss) that you created for administration or deployment tasks.
Verify that you have a backup copy of any custom extensions and custom assemblies you are using.