none
SSRS 2012 - The version of the report server database is either in a format that is not valid, or it cannot be read.

    Question

  • Hi All,

    I've just installed SSRS 2012 onto a member server and installed SSRS 2012. I used SQL 2005 as the DB server to host the database.

    Everything installed fine no errors, until i tried to run the ReportServer website.

    "The version of the report server database is either in a format that is not valid, or it cannot be read. The found version is '143'. The expected version is '162'"

    I got the above error.

    I read in the documentation that it supports 2005 onwards as the DB server. I have recreated the DB about 10 times now and rebooted the server at least 3 times. I have also found the Stored procedure that the DB runs to find it's version. Strangely enough the TEMPDB has the correct version 162, but the actual DB has 142.

    I have also checked that the RSexecroles is configured correctly as per the link below.

    http://support.microsoft.com/kb/956160

    EDIT - I have also found in the SSRS log file the following errors when the server tries to update the DB 

    library!DefaultDomain!598!05/08/2012-12:42:52:: i INFO: Starting upgrade DB version from C.0.9.45 to 162.
    library!DefaultDomain!598!05/08/2012-12:42:52:: e ERROR: Throwing Microsoft.ReportingServices.Diagnostics.Utilities.ReportServerStorageException:, An error occurred within the report server database.  This may be due to a connection failure, timeout or low disk condition within the database.;

    EDIT - I have also found that if i move the database location to a 2008 R2 server it works FINE! To be sure that this issue effects 2005 i also created a new instance with all the latest updates and CU3 SP4. It still gives the same error. I also installed SQL 2012 CU1, which also didn't help.

    Can someone clarify if SSRS 2012 with on a 2005 DB is supported? the line from this article suggests it is. http://msdn.microsoft.com/en-us/library/ms143724.aspx  - "Choose the Database Engine instance to use. SQL Server 2012 Reporting Services requires that you use SQL Server 2005, 2008, 2008 R2, or SQL Server 2012 to host the report server database. "

    Any help much appreciated

    Matt



    Tuesday, May 08, 2012 11:14 AM

Answers

All replies

  • Hi Matt,

    From your description, the same ReportServer database hosted in SQL Server 2008 R2 Database Engine instance can be recognized by SQL Server 2012 Reporting Services. In the article “Migrate a Reporting Services Installation”, we can notice that:

    “SQL Server 2012 Reporting Services requires that you use SQL Server 2005, 2008, 2008 R2, or SQL Server 2012 to host the report server database. SQL Server 2000 can no longer be used to host the report server database for SQL Server 2012 Reporting Services. If you used SQL Server 2000 or SQL Server 2005 running in 8.0 compatibility mode, you must upgrade the Database Engine or choose another Database Engine instance.”

    So, the issue might occur if you SQL Server 2005 run in 8.0 compatibility mode. At this time, I suggest that you refer to the steps below:

    1. On you SQL Server 2005 server, open SQL Server Management Studio (SSMS), connect to the “Database Engine” server type.
    2. Right click the server node and click “New Query”.
    3. Type in the following query and execute it:

      EXEC sp_dbcmptlevel ReportServer, 90;
      GO
      EXEC sp_dbcmptlevel ReportServerTempDB, 90;
      GO

    Then, please check the original issue again.

    Reference:

    Regards,
    Mike Yin

    Wednesday, May 09, 2012 12:51 PM
  • Hi Mike,

    Thanks for your response.

    Unfortunately that hasn't made a difference i am still getting the same error. Please also note that i am currently trying to create a blank DB, i am not moving from and old instance, just trying to use an old server.

    As i said before the TEMPDB is at the correct version 162. So that would suggest that the DB is setup correctly, but something during the DB upgrade process performed by SQL 2012 isn't working correctly.

    I have also noticed some more detail below in the logs.

    library!WindowsService_0!a90!05/09/2012-14:13:04:: e ERROR: Throwing Microsoft.ReportingServices.Diagnostics.Utilities.ReportServerStorageException: , An error occurred within the report server database.  This may be due to a connection failure, timeout or low disk condition within the database.;
    library!WindowsService_0!a90!05/09/2012-14:13:04:: e ERROR: ServiceStartThread: Exception caught while starting service. Error: Microsoft.ReportingServices.Diagnostics.Utilities.ReportServerStorageException: An error occurred within the report server database.  This may be due to a connection failure, timeout or low disk condition within the database. ---> System.Data.SqlClient.SqlException: Cannot assign a default value to a local variable.
    Cannot assign a default value to a local variable.
    Must declare the scalar variable "@maxCleanCount".
    Must declare the scalar variable "@now".
    Must declare the scalar variable "@maxCleanCount".
    Must declare the scalar variable "@now".
    library!WindowsService_0!a90!05/09/2012-14:13:04:: e ERROR: ServiceStartThread: Attempting to start service again...
    rpcserver!DefaultDomain!a90!05/09/2012-14:13:04:: i INFO: RPC Server started.
    servicecontroller!DefaultDomain!a90!05/09/2012-14:13:04:: i INFO: RPC Server started. Endpoint name ='ReportingServices$MSRS11.MSSQLSERVER'
    library!DefaultDomain!994!05/09/2012-14:13:05:: i INFO: Catalog SQL Server Edition = Standard
    library!DefaultDomain!994!05/09/2012-14:13:05:: i INFO: Current DB Version 143, Instance Version 162.
    library!DefaultDomain!994!05/09/2012-14:13:05:: i INFO: Starting upgrade DB version from 143 to 162.
    library!DefaultDomain!994!05/09/2012-14:13:13:: e ERROR: Throwing Microsoft.ReportingServices.Diagnostics.Utilities.ReportServerStorageException: , An error occurred within the report server database.  This may be due to a connection failure, timeout or low disk condition within the database.;

    Thanks

    Matt


    Wednesday, May 09, 2012 1:16 PM
  • Hi Matt,

    Thanks for your posting.

    Based on the error message, the issue can also by caused by insufficient permissions. At this time, I suggest that you refer to the steps below:

    1. Open SQL Server 2012 Management Studio, connect to Reporting Services server type.
    2. Expand the “Shared Schedules” and check whether an error similar to the following should is displayed:
      EXECUTE permission was denied on the object 'xp_sqlagent_notify', database 'mssqlsystemresource', schema 'sys'

    If there is, please refer to the troubleshooting steps in the following blog:
    ReportServerStorageException: An error occurred within the report server database. This may be due to a connection failure, timeout or low disk condition within the database.

    Hope this helps.

    Regards,
    Mike Yin

    Monday, May 14, 2012 12:01 PM
  • Hi Mike,

    I can't even get far enough into SQL management studio to check.

    I can connect to the SSRS instance then when i attempt to expand Shared Schedules i get the original error.

    TITLE: Microsoft SQL Server Management Studio
    ------------------------------

    Failed to retrieve data for this request. (Microsoft.SqlServer.Management.Sdk.Sfc)

    For help, click: http://go.microsoft.com/fwlink?ProdName=Microsoft%20SQL%20Server&LinkId=20476

    ------------------------------
    ADDITIONAL INFORMATION:

    The version of the report server database is either in a format that is not valid, or it cannot be read. The found version is '143'. The expected version is '162'. (rsInvalidReportServerDatabase) (Reporting Services SOAP Proxy Source)

    Thanks

    Matt

    Monday, May 14, 2012 1:10 PM
  • Hi Matt,

    Thanks for your feedback.

    Now that the SQL Server 2005 Reporting Service catalog database failed to upgrade, I suggest that you use the SSRS 2012 Configuration Manager to create a new report server database. 
    Create a Native Mode Report Server Database

    In addition, please make sure the RSExecRole is assigned to the Report Server catalog database. If this is the issue, to fix this issue, we must add RSExecRole to the db_owner role in the Reporting Services catalog databases.

    1. Open SQL Server Management Studio and connect to the database that hosts the ReportServer and ReportServerTempDB databases.
    2. In Object Explorer, expand the following nodes: Databases, ReportServer, Security, Roles, and Database Roles.
    3. Right-click db_owner, and click Properties.
    4. On the Database Role Properties page, click Add.
    5. On the Select Database User or Role page, type RSExecRole, and then click OK twice.
    6. Repeat these steps with the ReportServerTempDB.

    Then, please restart the Report Server service.

    Hope this helps.

    Regards,
    Mike Yin

    Tuesday, May 15, 2012 5:19 PM
  • HI Mike,

    As stated in my first post, i have already done these steps and recreated the database more than 10 times.

    We currently have a SQL 2005 SSRS installed as well and that version works fine on the same DB server.

    I have also checked the RSExecRole and it is set as the DB owner on both DB's.

    Thanks

    Matt

    Thursday, May 17, 2012 4:48 PM
  • I found a simple fix that appears to work.

    UPDATE [ReportServer].dbo.[ServerUpgradeHistory] SET ServerVersion = 162 -- 143

    I don't know what problems it could cause in the future.....

    Yitzchak

    Wednesday, August 01, 2012 9:31 AM
  • I am having a similair problem, but i am still getting the below error after setting the ServerVersion to 162. And the ReportServer and ReportServerTempDB are on SQL Server 2005 sp4 and were generated by SSRS 2012. 

    An error occurred within the report server database.  This may be due to a connection failure, timeout or low disk condition within the database. (rsReportServerDatabaseError) Get Online Help

    Could not find stored procedure 'GetDataSets'.

    Wednesday, October 03, 2012 10:37 PM
  • Just in case you haven't figured it out. Here is something that will help you. It really helped me. https://support.microsoft.com/kb/2796721
    Wednesday, January 09, 2013 3:48 PM