Hi,
 I've restored my report server 2005 from serverA to serverB and
 Reporting Services will run and I can access the reports, but the
 above error will pop whenever I try to run a report. I followed the
 steps outlined below - where did I go wrong?
 1) backed up the encryption key on serverA
 2) backed up the report server databases on both servers
 3) shut down RS on serverB
 4) detached the reportserver database on serverB
 5) renamed reportserver.mdf and ldf to reportserver.mdf_old and
 reportserver.ldf_old
 6) restored reportserver.mdf and ldf from serverA onto serverB
 7) started reporting services on serverB - failed to initialize
 8) restored encryption key and then deleted the row from
 REPORTSERVER.DBO.KEYS where machinename = 'serverB'
 9) restarted reporting services and the pages displayed
 10) accessed the report that I wanted to view and the error above
 popped
 11) tried deleting and re-creating reportserverTempDB by dropping and
 recreating from the CatalogTemp.sql file from the install - made sure
 that the collations matched
 Here is the error text:
 ReportingServicesService!runningjobs!4!4/3/2007-09:17:42:: e ERROR:
 Error in timer Database Cleanup (NT Service) :
 System.Data.SqlClient.SqlException: Invalid object name
 'ReportServerTempDB.dbo.PersistedStream'.
 at System.Data.SqlClient.SqlConnection.OnError(SqlException
 exception, Boolean breakConnection)
 at System.Data.SqlClient.SqlInternalConnection.OnError(SqlException
 exception, Boolean breakConnection)
 at
 System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject
 stateObj)
 at System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior,
 SqlCommand cmdHandler, SqlDataReader dataStream,
 BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject
 stateObj)
 at
 System.Data.SqlClient.SqlCommand.FinishExecuteReader(SqlDataReader ds,
 RunBehavior runBehavior, String resetOptionsString)
 at
 System.Data.SqlClient.SqlCommand.RunExecuteReaderTds(CommandBehavior
 cmdBehavior, RunBehavior runBehavior, Boolean returnStream, Boolean
 async)
 at
 System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior
 cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String
 method, DbAsyncResult result)
 at
 System.Data.SqlClient.SqlCommand.InternalExecuteNonQuery(DbAsyncResult
 result, String methodName, Boolean sendToPipe)
 at System.Data.SqlClient.SqlCommand.ExecuteNonQuery()
 at
 Microsoft.ReportingServices.Library.InstrumentedSqlCommand.ExecuteNonQuery()
 at
 Microsoft.ReportingServices.Library.DatabaseCleanupTimer.CleanBatch()
 at
 Microsoft.ReportingServices.Library.DatabaseCleanupTimer.DoTimerAction()
 at
 Microsoft.ReportingServices.Diagnostics.TimerActionBase.TimerAction(Object
 unused)On Apr 3, 10:41 am, "Tim" <timgoldenst...@.msn.com> wrote:
> Hi,
> I've restored my report server 2005 from serverA to serverB and
> Reporting Services will run and I can access the reports, but the
> above error will pop whenever I try to run a report. I followed the
> steps outlined below - where did I go wrong?
> 1) backed up the encryption key on serverA
> 2) backed up the report server databases on both servers
> 3) shut down RS on serverB
> 4) detached the reportserver database on serverB
> 5) renamed reportserver.mdf and ldf to reportserver.mdf_old and
> reportserver.ldf_old
> 6) restored reportserver.mdf and ldf from serverA onto serverB
> 7) started reporting services on serverB - failed to initialize
> 8) restored encryption key and then deleted the row from
> REPORTSERVER.DBO.KEYS where machinename => 'serverB'
> 9) restarted reporting services and the pages displayed
> 10) accessed the report that I wanted to view and the error above
> popped
> 11) tried deleting and re-creating reportserverTempDB by dropping and
> recreating from the CatalogTemp.sql file from the install - made sure
> that the collations matched
> Here is the error text:
> ReportingServicesService!runningjobs!4!4/3/2007-09:17:42:: e ERROR:
> Error in timer Database Cleanup (NT Service) :
> System.Data.SqlClient.SqlException: Invalid object name
> 'ReportServerTempDB.dbo.PersistedStream'.
> at System.Data.SqlClient.SqlConnection.OnError(SqlException
> exception, Boolean breakConnection)
> at System.Data.SqlClient.SqlInternalConnection.OnError(SqlException
> exception, Boolean breakConnection)
> at
> System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject
> stateObj)
> at System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior,
> SqlCommand cmdHandler, SqlDataReader dataStream,
> BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject
> stateObj)
> at
> System.Data.SqlClient.SqlCommand.FinishExecuteReader(SqlDataReader ds,
> RunBehavior runBehavior, String resetOptionsString)
> at
> System.Data.SqlClient.SqlCommand.RunExecuteReaderTds(CommandBehavior
> cmdBehavior, RunBehavior runBehavior, Boolean returnStream, Boolean
> async)
> at
> System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior
> cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String
> method, DbAsyncResult result)
> at
> System.Data.SqlClient.SqlCommand.InternalExecuteNonQuery(DbAsyncResult
> result, String methodName, Boolean sendToPipe)
> at System.Data.SqlClient.SqlCommand.ExecuteNonQuery()
> at
> Microsoft.ReportingServices.Library.InstrumentedSqlCommand.ExecuteNonQuery()
> at
> Microsoft.ReportingServices.Library.DatabaseCleanupTimer.CleanBatch()
> at
> Microsoft.ReportingServices.Library.DatabaseCleanupTimer.DoTimerAction()
> at
> Microsoft.ReportingServices.Diagnostics.TimerActionBase.TimerAction(Object
> unused)
This MS article might be of assistance.
http://msdn2.microsoft.com/en-us/library/ms159093.aspx
Regards,
Enrique Martinez
Sr. Software Consultant|||Thanks Enrique - it turned out to be a permissions issue on the
ReportServerTempDB in that RSExecRole role
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment