Восстановление базы данных SQLite в SEoDOR’e
SEoDOR работает с базой SQLite, для которой не нужно создавать никаких таблиц, вводить логин:пароль и тд. Но бывают такие ситуации, когда нужно восстановить бекап доров либо перенести их на другой сервер. Тогда базы SQLite иногда «повреждаются» и, при обращении к странице дора, браузер выдает такую ошибку:
HY000 11 database disk image is malformed
Восстановление БД SQLite для SEoDOR 3.5-
Восстановление БД SQLite для SEoDOR 5+
Восстановление БД SQLite для SEoDOR 3.5-
Перед всеми манипуляциями сделайте бекап файлов!
Через SSH переходим в папку кеша:
cd /var/www/user/data/www/dor.ru/cache
В папке кеша имеются несколько файлов баз данных SQLite, которые требуют восстановления:
dor.ru_images.db
dor.ru_links.db
dor.ru_map_all.db
dor.ru_pages.db
Выполняем команды (делаем дамп -> удаляем старый файл базы -> восстанавливаем новую базу из дампа для 4-х файлов выше):
sqlite3 dor.ru_images.db ".dump" > dump.sql
rm -f dor.ru_images.db
sqlite3 -init dump.sql dor.ru_images.db
.quit
sqlite3 dor.ru_links.db ".dump" > dump.sql
rm -f dor.ru_links.db
sqlite3 -init dump.sql dor.ru_links.db
.quit
sqlite3 dor.ru_map_all.db ".dump" > dump.sql
rm -f dor.ru_map_all.db
sqlite3 -init dump.sql dor.ru_map_all.db
.quit
sqlite3 dor.ru_pages.db ".dump" > dump.sql
rm -f dor.ru_pages.db
sqlite3 -init dump.sql dor.ru_pages.db
.quit
удаляем папку _rezervuar и файл dor.ru_index_or_cat.db (их можно было бы также восстановить, но не будем этого делать, т.к. они создадутся сами):
rm -rf _rezervuar
rm -f dor.ru_index_or_cat.db
Выставляем владельца, который нужен (48 — владелец:группа, у вас могут быть другие данные):
chown -R user:user /var/www/user/data/www/dor.ru/cache
Теперь переходим на страницу дора и радуемся :)
Если выдало ошибку, типа:
Warning: Invalid argument supplied for foreach() in /var/www/user/data/www/dor.ru/functions.php on line 1181
то просто обновите страницу несколько раз.
Восстановление БД SQLite для SEoDOR 5 +
Здесь нужно выполнить следующие команды (где user — нужный пользователь):
cd /var/www/user/data/www/seodor5.ru/internal_data/public/site.ru
cp database.db database.db_bak
sqlite3 database.db ".dump" > dump.sql
rm -f database.db
sqlite3 -init dump.sql database.db
.quit
chown -R user:user /var/www/user/data/www/seodor5.ru/internal_data/public/site.ru
Категория: Заметки
Комментари (0)
Trackback URL | Comments RSS Feed
Комментариев пока что нет. Вы будете первым!