26.04.2016 01:39
Дорогие мои спасите плиз, уже не знаю куда писать, дело в том, что мой сервер SQL 2005 недавно сломался и с тех пор не может делать резервные копии журналов для основной критической БД.
Сама ошибка появилась вот такая: обнаружено повреждение в журнале базы данных. Проверьте журнал ошибок для получения дополнительной информации. BACKUP LOG аварийное завершение ". Если честно даже не знаю, что я могла сделать не так, но одно знаю точно, что мне крышка от начальства если в ближайшее время все не налажу. Ошибка 3041
Как я могу исправить это?
26.04.2016 07:27
Так в журнале ошибок-то что?
26.04.2016 07:44
Ну если лог стандартно один, то самое простое.
Делаешь Detach базы, делаешь полную копию базы на всякий случай (копирование файлов) удаляешь ручками файл лога, делаешь attach базы. Файл лога минимального размера создастся автоматически. Ну и проверка жесткого диска, конечно.
26.04.2016 11:52
Можно попробовать без Detach. После отсоединения обратно уже можно и не присоединить( Есть несколько вариантов действий:
1 без остановки SQL Server
прогнать скрипт
ALTER DATABASE ИмяБазы SET SINGLE_USER WITH ROLLBACK IMMEDIATE, Emergency
DBCC CheckDB (’ ИмяБазы’, REPAIR_ALLOW_DATA_LOSS)
ALTER DATABASE ИмяБазы SET MULTI_USER, ONLINE

в результате DBCC перестроит лог

2 с остановкой SQL
отсоединить базу,сделать бэкап
создать новую с таким же именем
остановить службу SQL Server
переписать из бэкапа файл базы mdf
запустить службу SQL
прогнать скрипт
ALTER DATABASE ИмяБазы SET SINGLE_USER, Emergency
DBCC CheckDB (’ ИмяБазы’, REPAIR_ALLOW_DATA_LOSS)
ALTER DATABASE ИмяБазы SET MULTI_USER, ONLINE

во втором случае у вас есть бэкап на случай "если что".
26.04.2016 12:08
Цитата:
vitamin Можно попробовать без Detach. После отсоединения обратно уже можно и не присоединить( Есть несколько вариантов действий:
1 без остановки SQL Server
прогнать скрипт
ALTER DATABASE ИмяБазы SET SINGLE_USER WITH ROLLBACK IMMEDIATE, Emergency
DBCC CheckDB (’ ИмяБазы’, REPAIR_ALLOW_DATA_LOSS)
ALTER DATABASE ИмяБазы SET MULTI_USER, ONLINE

в результате DBCC перестроит лог

2 с остановкой SQL
отсоединить базу,сделать бэкап
создать новую с таким же именем
остановить службу SQL Server
переписать из бэкапа файл базы mdf
запустить службу SQL
прогнать скрипт
ALTER DATABASE ИмяБазы SET SINGLE_USER, Emergency
DBCC CheckDB (’ ИмяБазы’, REPAIR_ALLOW_DATA_LOSS)
ALTER DATABASE ИмяБазы SET MULTI_USER, ONLINE

во втором случае у вас есть бэкап на случай "если что".
Мое мнение, если повреждение журнала, то его лучше убить после останова и создать новый. Тем более человек вообще не в теме.
30.04.2016 20:05
Ты можешь попробовать взять файл OST, который создала через Outlook и просто скопировать его в файл PST, который затем нужно будет установить на другую систему в качестве личной папки. Кажется слишком простой способ, но все же попробуй так. А вообще для этого есть инструмент который мгновенно считывает файл OST и экспортирует в PST файл вроде по описанию подходит для всех операционок и расширений
Часовой пояс GMT +3, время: 17:53.

Форум на базе vBulletin®
Copyright © Jelsoft Enterprises Ltd.
В случае заимствования информации гипертекстовая индексируемая ссылка на Форум обязательна.