ИЗМЕНИТЬ ВИДЕТЬ EDITS: Как и полный noob, я случайно удалил наш ReportServerTempDB (у меня есть резервная копия ReportServer, но нет ReportServerTemp, вживую и учиться). (С помощью SQL Server 2008 R2)Устранение неполадок Re Создание ReportServerTempDB
Чтобы восстановить базу данных, я последовал несколько онлайновых руководств, которые дали несколько стадий:
- создал новую базу данных с именем ReportServerTempDB, и с той же сортировки, как ReportServer (сортировки был ключ)
- сделал новую базу данных роли под названием RSExecRole с тем же пользователями, как мой ReportServer (также ключ, чтобы убедиться, что эта роль имеет правильные права доступа к таблицам)
- запускал скрипт CatalogTempDB который бежал без сучка (версия для CatalogTempDB недостаточно для воссоздания всех объектов необходимо)
- Б Менеджер служб Reporting Services Config Изменение базы данных и выбрал ReportServer
- Просто для хорошей мерой выключения и включения служб отчетов SQL Server несколько раз
Но я все еще получаю ошибку, когда я попробуйте загрузить главную страницу служб Reporting Services: Произошла ошибка в базе данных сервера отчетов. Это может быть связано с сбоем подключения, таймаутом или низким диском в базе данных. (rsReportServerDatabaseError). Для получения дополнительной информации об этой ошибке перейдите к серверу отчетов на локальном сервере или удалите ошибки
Что я забыл? В качестве альтернативы я могу просто «создать новую базу данных сервера отчетов» и импортировать резервную копию моего исходного ReportServer? TIA
EDIT: Я рассмотрел RSExecRole и удостоверился, что у него есть разрешение на редактирование таблиц и выполнение хранимых процедур (онлайновые источники не прописали это очень четко), и после перезапуска службы Reporting Services моя ошибка изменилась на «Ошибка произошел в базе данных сервера отчетов. Это может быть связано с ... Недопустимое имя объекта «ReportServerTempDB.dbo.TempCatalog». Невозможно использовать представление или функцию «ExtendedCatalog» из-за ошибок привязки. « Дальнейшее чтение предполагает, что имя сервера отчетов temp жестко закодировано во многие хранимые процедуры в ReportServer, но мой новый сервер отчетов temp имеет то же имя: ReportServerTempDB. Где отключается?
EDIT2: Таким образом, сценарий, который я использовал, CatalogTempDB, не создавал всех таблиц, необходимых для восстановления моего временного сервера отчетов Db. Я создал новый сервер отчетов и ReportServerTempDB (который изменил имя) и сравнил объект в моем ReportServerTempDB, созданный с помощью CatalogTempDB, с тем, который создал мастер SQL. Затем он использовал мастер импорта для добавления отсутствующих таблиц и повторного запуска службы отчетов с моим оригиналом. Вуаля.
С удовольствием предоставим более подробную информацию о любом из этих шагов.