Справка:Выгрузка энциклопедии
Материал из ЛДЗ
Перейти к навигацииПерейти к поиску
Привожу методику выгрузки базы на будущее, раз уж эта задача стала возникать с завидной регулярностью на каждой полигонной игре. В общем случае предполагается, что необходимо выгрузить работоспособную версию базы на ноутбук, который не будет иметь доступа в интернет во время игры.
Перед началом работы
Нам потребуется:
- Админский доступ к вики.
- Доступ по ssh к текущему сайту[1].
- Адрес phpmyadmin-сервиса хостинга, на котором расположен сайт (имя пользователя и пароль можно взять из настроечных файлов MediaWiki и Wordpress-а, доступных через ssh).
- Самая последняя версия Mowes Portable c http://www.chsoftware.net/en/mowes/mowesportable/mowes.htm[2]. При формировании дистрибутива выбираем: apache (самый свежий), MySQL v.5, PHP v.5, PhpMyAdmin (самый свежий).
- Утилиты для:
- Доступа по ssh (ssh в linux, putty в windows)
- Работы с архивами tar/gz (tar в linux, 7zip в windows)
- Перекодировки имен файлов (convmv в linux, жертвам windows сочувствую)
- Много терпения
Подготовка целевого компьютера
- Создаем директорию, в которой у нас будет жить Mowes, например "nest". Очень важно: во избежании проблем, в первую очередь - с запуском apache, в полном пути директории следует избегать пробелов и русских букв[3]. Хорошим выбором будет расположить директорию прямо в корне любого диска (например "D:\nest").
- Распаковываем туда дистрибутив Mowes и запускаем его. При первом запуске выбираем установку всех имеющихся в наличии пакетов. Площадка готова, внутренняя директория "www" теперь при запуске Mowes видна по адресу http://localhost/.
- Создаем в директории www поддиректорию под наш проект, например "farstars"[4]. Она будет видна по адресу http://localhost/farstars/. Далее исходим из того, что это было сделано.
Копирование
- На целевом компьютере заходим на http://localhost/phpmyadmin/ и создаем одну или две базы (по желанию) под MediaWiki (движок вики) и Wordpress (движок новостей). Посколько вопрос информационной безопасности на игре обычно не стоит, пользователей MySQL можно не создавать, хватит имеющегося по умолчанию пользователя root с пустым паролем. Если данный вариант по какой-то причине неприемлем, администрируем пользователей по собственному вкусу, однако это выходит за рамки данного руководства.
- На целевом компьютере разворачиваем в директории farstars пустую базу MediaWiki той же версии, что и на сайте (см. Служебная:Version). Подробная инструкция есть на сайте самой MediaWiki. Альтернативный вариант - копирование по аналогии с копированием Wordpress-а, но это на свой страх и риск, поскольку сама база при этом гарантировано будет повреждена (однако тем не менее позволит импортировать статьи поверх поврежденных, нам ведь главное только, чтобы вики позволила дойти до странички "импорт статей"). Важно: на данном этапе вики на целевом компьютере должна хоть как-нибудь запускаться по адресу http://localhost/farstars/, пусть даже в ней не будет информации или информация будет повреждена.
- В случае проблем с адресацией (и только в этом случае!) правим LocalSettings.php и .htaccess в корне farstars на целевом компьютере(см. далее, как). Убеждаемся, что Mowes не перезаписывает .htaccess при старте (это галочка в его настройках, правильный вариант - это вариант по умолчанию).
- Заходим по ssh на сайт и в командной строке делаем дамп базы вики утилитой dumpBackup.php, расположенной в директории maintenance движка. По ссылке можно посмотреть руководство.
- Заходим по ssh на сайт и запаковываем все файлы в один архив (tar -c -f имя_файла_архива что_сжимаем).
- Выкачиваем дамп и архив по ftp (если у нас есть доступ) или по http через временную папку на сайте (этот вариант доступен всегда, когда есть ssh).
- Перезаливаем содержимым архива директорию farstars на целевом компьютере.
- Перекодируем на целевом компьютере имена всех файлов в директории farstars/images из utf-8 в windows-1251. Если к этому моменту они уже безвозвратно убиты[5], то, возможно, понадобится промежуточный этап и возврат к предыдущему пункту: я например разворачивал архив на компьютере с установленной Ubuntu и перекодировал на нем имена файлов утилитой convmv, и только потом заливал папку images на целевой компьютер.
- Ищем LocalSettings.php в корне папки farstars целевого компьютера. Внимательно читаем его. Если видим где-то абсолютные пути к файлам (например к файлу логотипа) исправляем с учетом того, что теперь абсолютный адрес не http://farstars.ru/, а http://localhost/farstars/. Исправляем название базы на ту, которую мы сделали в Mowes (и использовали при установке MediaWiki), пользователя и пароль на установленные вами (по умолчанию - root с пустым паролем) и указываем адрес mysql-сервера как localhost. Аналогичную процедуру производим с файлом настроек Вордпресса в директории farstars/live (если для Вордпресса мы хотим использовать другую базу, указываем другую. Не важно, что она пустая, сейчас мы это исправим).
- Идем в файл .htaccess в корне папки farstars целевого компьютера. Если его там нет, выкачиваем его отдельно с сайта (или просто открываем на сайте и смотрим, а на локальной машине повторяем то, что там написано). Во все локальные адреса в директивах RewriteRule и т.п., начинающиеся с "/" (например "/live") дописываем "/farstars" (например может получиться "/farstars/live"). (Предполагается что следуя инструкции, вы разместили все файлы вики в папке farstars).
- Идем на http://localhost/farstars/Mediawiki:Import (или по ссылкам на служебную страницу "Импорт статей"). Загружаем дамп. Он, скорее всего, загрузится не полностью (покажет ошибку или уйдет в белый экран из-за чрезмерного объема базы). Это не страшно. Загружаем его (один и тот же файл) несколько раз, пока не достигнем успеха (движок пропускает уже загруженные файлы, поэтому каждый раз импортируется только то, что не импортировалось в прошлый раз). В случае успеха, мы имеем уже почти работающую вики. Могут быть сломаны файлы картинок с русскими именами (об этом выше), может быть сломана история правок, если например вики на целевом компьютере была не новая, а при подготовки дампа в параметрах dumpBackup.php было указано не --full, а --current.
- Ура! Мы почти у цели. Собственно говоря, сама ЛДЗвики уже должна работать. Теперь выгрузим "Кабачок": идем в phpmyadmin хостера, выбираем базу данных _live, выгружаем ее полностью (закладка "Экспорт") с настройками по умолчанию, предпочтительно архивировуя в gzip (ставим соотвествующую галочку при выгрузке). Сохраняем файл на целевой компьютер.
- Идем на http://localhost/phpmyadmin/ (пользователь root если что, пароля нет), открываем там подготовленную нами в п. 1 базу для вордпресса, идем на закладку "Импорт" и загружаем с настройками по умолчанию.
- Не выходя из phpmyadmin идем в таблицу wp-options и правим адрес сайта на http://localhost/farstars/live. Вуаля! Теперь Кабачок работает указанному адресу. Могут быть глюки с адресацией, если мы накосячили с файлом .htaccess, тогда возвратимся к соответствующему пункту и все перепроверяем.
- Идем на http://localhost/farstars/Mediawiki:Sidebar. Редактируем, исправляя абсолютные ссылки.
- Идем в консоль Wordpress, в редактор тем. Редактируем тему "farstars", исправляя абсолютные ссылки в header.php, sidebar.php, index.php и single.php.
- Выдыхаем, чувственно материмся, проверяем все пункты, если что-то не работает. Если все работает, идем пить
водкучай.
Примечания
- ↑ Доступ по ftp, логины и пароли к mysql и т.п. или не обязательны, или восстанавливаются при наличии доступа по ssh
- ↑ Подойдет любой пакет, не требующий установки на компьютер. Многие предпочитают, например, Denwer, однако в прошлом у него него были замечены проблемы с базами данных больших объемов. Возможно, в последних версиях проблема решена, или я просто в чем-то не разобрался, но в данном случае рассматривается использование Mowes как простой и проверенный способ.
- ↑ На Windows Vista и далее русские буквы вроде перестали быть проблемой, но мы предупредили (tm).
- ↑ Это, в принципе, не обязательно, но полезно в общем случае, например если нужно запускать с одной площадки несколько разных сайтов.
- ↑ Это 100% произойдет, если, например, вы перекидывали архив через флешку, где по умолчанию используется файловая система FAT.
Ссылки
См. также: Справка: Справка