Возможные причины повреждения:
• ошибка с vacuum; которая была исправвлена;
• аварийное отключение электропитания;
• проблемы с завершением работы сервиса при завершении работы ОС;
• проблемы файловой системы/диска.
Алгоритм для пострадавших от database disk image is malformed:
(При выполнении этих действий отключите самозащиту ES агента, если установлен. По окончании работ включите обратно.
После восстановления БД убедитесь, что используете последнюю версию ES сервера.)
Только для SQLite3 (косвенный признак – ваш сервер использует файл database.sqlite)
1. Останавливаем ES сервер, обязательно убеждаемся, что он остановлен.
2. Запускаем, из каталога bin рабочего каталога ES сервера:
drwidbsh3 ../var/database.sqlite
Выполняем команды, дожидаясь приглашения:
3. Из всё того же drwidbsh3 ../var/database.sqlite
.clone ../var/database_1.sqlite
Далее по вкусу: либо заменяете database.sqlite на database_1.sqlite (переименовываете) и запускаете ES сервер, либо перенастраиваете сервер на database_1.sqlite. Рекомендуется первое, чтобы потом не запутаться, но сохраните предыдущий database.sqlite куда-нибудь.
Для dbinternals.dbs воспользуйтесь следующей инструкцией: http://wiki.drweb.com/index.php/Восстановление_внутренней_базы_при_небольших_повреждениях_и_отсутствии_бэкапов
Альтернативный вариант – восстановление базы из бэкапа, который автоматически создается ES сервером.
Для этого нужно либо удалить имеющуюся базу, либо переименовать её. После чего проинициализировать новую и провести процедуру импорта.
"C:\Program Files\DrWeb Server\bin\drwcsd.exe" -home="C:\Program Files\DrWeb Server" -var-root="C:\Program Files\DrWeb Server\var" -verbosity=all initdb "C:\Program Files\DrWeb Server\etc\agent.key" - - root
(где root – пароль встроенного администратора admin)
"C:\Program Files\DrWeb Server\bin\drwcsd.exe" importdb "C:\Program Files\DrWeb Server\var\backup\xxxxxxxxxxxxxx\database.gz"
За создание инструкции благодарности направлять Kirill Polubelov и коллективному разуму форума
Сообщение было изменено Pavel Plotnikov: 03 Декабрь 2014 - 17:12