How to: Upgrade a SQL Server Express Report Server to Other SQL Server Editions

SQL Server Setup

New: 14 April 2006

SQL Server 2005 Express Edition with Advanced Services (SQL Server Express) includes a subset of Reporting Services functionality. To use additional features, you must upgrade to a different edition. You can upgrade SQL Server Express to the Standard, Developer, Enterprise, or Workgroup Edition of SQL Server 2005 Reporting Services. Not all Reporting Services features are available in every edition. If you are upgrading SQL Server Express because you want to use a specific feature, verify that the edition supports it. For more information, see Features Supported by the Editions of SQL Server 2005.

The Express edition of Reporting Services is based on SQL Server 2005 Service Pack 1. Because it is based on Service Pack 1, the Express edition is newer than the version of Reporting Services that shipped in other editions of SQL Server 2005. The Express edition includes enhancements from Service Pack 1 and uses the Service Pack 1 version of the report server database schema. When you upgrade from Express to a different edition of SQL Server, the schema of the report server database retains the Service Pack 1 format and is not modified during the upgrade. To use the report server database from SQL Server Express in an upgraded installation, you must apply Service Pack 1 to avoid compatibility problems between the report server and the report server database.

Reporting Services has edition requirements for the SQL Server Database Engine that hosts the report server database. After the report server is upgraded, you can no longer use SQL Server Express to host a report server database. Instead, you can either choose another SQL Server Database Engine instance or you can upgrade the Database Engine instance in SQL Server Express to a compatible edition. You can use any local or remote SQL Server 2000 or SQL Server 2005 Database Engine instance that is valid for the report server edition you are using. For more information about edition requirements for report server databases, see Creating a Report Server Database.

To upgrade your installation, you must use the SKUUPGRADE=1 argument. You can specify this argument when you start the SQL Server Setup wizard. Or, you can run Setup from the command prompt and include the SKUUPGRADE=1 argument on the command line.

To simplify the upgrade and minimize configuration steps after setup is complete, you should upgrade Reporting Services and the Database Engine together. If you choose to upgrade only Reporting Services, you must attach the report server database to the Database Engine instance you want to use, and then configure the report server to use that database.

The following example provides an illustration of the command line that upgrades Reporting Services and Database Engine in the same operation:

Copy Code
start /wait setup.exe ADDLOCAL=SQL_Engine,RS_Server PIDKEY=ABCDE12345FGHIJ67890KLMNO INSTANCENAME=SQLEXPRESS UPGRADE=SQL_Engine,RS_Server SKUUPGRADE=1 /qb

The example assumes you are running Setup from a folder that contains the Setup.exe program file for the edition to which you are upgrading (do not run the SQL Server Express Setup program to upgrade to a different edition). The PIDKEY in the example is fictitious; the actual value must be valid for the edition to which you are upgrading. For more information about running Setup from the command prompt, see How to: Install SQL Server 2005 from the Command Prompt.

After upgrade is finished, you must apply Service Pack 1. Otherwise, you will get a database compatibility error message.

Note that once you begin upgrading your SQL Server Express installation, the report server and content will not be available until all of these steps are complete.

Update a SQL Server Express Installation

  1. Backup the report server database and report server temporary database. By default, the databases are named reportserver$SQLExpress and reportserverTempDB$SQLExpress.

  2. Backup the RSReportServer.config file. If you modified other configuration files (such as Web.config or RSWebApplication.config), you should back them up.

  3. Backup the encryption key using the Encryption Keys page in the Reporting Services Configuration tool. For more information, see Backing Up and Restoring Encryption Keys.

  4. Run Setup with the SKUUPGRADE=1 argument.

    To run Setup in unattended mode from the command line, use syntax that is similar to the following example. Note that the PIDKEY is fictitious; be sure to replace it with a PIDKEY that is valid for the edition you are installing.

    Copy Code
    start /wait setup.exe ADDLOCAL=SQL_Engine,RS_Server PIDKEY=ABCDE12345FGHIJ67890KLMNO INSTANCENAME=SQLEXPRESS UPGRADE=SQL_Engine,RS_Server SKUUPGRADE=1 /qb

    To run the SQL Server Setup Wizard:

    1. Open a command prompt, navigate to the directory or drive that contains the installation media, and specify setup.exe SKUUPGRADE=1 on the command line (for example, d:\setup.exe SKUUPGRADE=1).
    2. On the Registration Information page, enter identification information used to register your copy of SQL Server.
    3. On the Components to Install page, select Database Services, Reporting Services, and Workstation components, Books Online and development tools.
    4. On the Instance Name page, click Named instance, and then choose the SQLEXPRESS instance you are upgrading.
    5. Complete the wizard by specifying options on the remaining pages.
  5. Apply Service Pack 1 after Setup is complete.

To verify that the upgrade succeeded, open Report Manager. You should be able to view all of the reports that you previously created. If you have not changed the virtual directory, the URL used to access Report Manager in the upgraded installation will be the same URL you used in the Express installation.

Unless you rename them, an upgraded installation continues to use names from the original installation. If you used default SQL Server Express names, the upgraded SQL Server instance name continues to be <servername>\SQLExpress. For the databases, the default names continue to be reportserver$sqlexpress and reportservertempdb$sqlexpress. For the Reporting Services URLs, the default names continue to be http://<servername>/reports$SQLExpress and http://<servername>/reportserver$SQLExpress. To avoid confusion, you can reregister the SQL Server instance to change the instance name, and rename the report server virtual directories. Renaming a report server database is not supported. For more information, see Registering Servers and Configuring Report Server Virtual Directories in SQL Server Books Online.

In addition to viewing existing report server content, you should also be able to create subscriptions and scheduled operations, and use other features that are available in the edition you installed. For more information about how to create subscriptions and schedules, see Report Manager How-to Topics. If the report server upgrade did not succeed or seems incomplete, you can migrate the installation instead. For more information, see Migrating Reporting Services.

You can specify client components on the command line to upgrade SQL Server Management Studio and Business Intelligence Development Studio. You can verify whether the tools upgraded correctly by doing the following:

  • Connect to a Reporting Services instance in SQL Server Management Studio.
  • Create additional project types in Business Intelligence Development Studio (specifically, the Report Model project template should be available when you create a new project in Business Intelligence Development Studio).

If the tools do not upgrade correctly, you can use Add or Remove Programs to uninstall the tools you no longer need, and then run SQL Server Setup to install the tools that are included in the edition you are upgrading to.

If you are migrating other SQL Server Express databases that provide data to reports to another Database Engine, be sure to update the data source connection information used by published reports after the upgrade is complete. For example, if a data source specified Data Source=localhost\sqlexpress, it should be updated to Data Source=localhost if you migrate the database to a local default instance.

See Also