Восстановление вашего сайта и базы данных

О, нет! Вы попытались зайти на ваш сайт, и он исчез! Что можно сделать в этом случае? Как можно его вернуть? К сожалению, уже слишком поздно задавать этот вопрос: случилось непоправимое. Вам следовало прочесть эту главу заранее, тогда вы были бы подготовлены.

Однако если несчастье еще не произошло, то вы читаете эту главу как раз вовремя. Вам следует знать, что много компаний, предоставляющих услуги хостинга, регулярно создают резервные копии сайтов и баз данных своих клиентов. Если вы пользуетесь услугами хостинга, то спросите своего провайдера, предоставляет ли он такую услугу. И узнайте заблаговременно, что они смогут сделать, если что-то произойдет и надо будет восстанавливать ваш сайт.

PHP-Nuke оснащен встроенной функцией сохранения баз данных. Доступ к этой функции можно получить через меню Administration (Администрирование). Данная функция называется Backup DB (Резервная копня базы данных). По щелчку мыши на этом значке не открывается никаких диалогов; создается копил сайта, которая для сохранности немедленно загружается на ваш локальный компьютер.

Если все же наихудшее произошло и необходимо восстановить ваш сайт, то следуйте следующим советам: вам необходимо удалить все таблицы в вашей PHP-Nuke базе данных и вставить вместо них таблицы из резервной копии. Черт! На самом деле ход ваших действий зависит ровно от того, какой формат базы данных вы используете с PHP-Nuke; например, формат MySQL позволяет вам просто импортировать резервную копию как большой запрос (резервная копия - это просто огромный текстовый файл). Это можно сделать с большинством баз данных. Вам необходимо знать, как именно выполнить импорт; эту возможность вам должен предоставить ваш провайдер, если таковой имеется. В большинстве случаев вам предоставляется набор инструментов Web-based administration (Адмшшстрирование через Интернет); в случае MySQL, такой инструментарий называется phpMyAdmln.

После удаления всех таблиц вернитесь наверх страницы и щелкните мышью на ярлыке вкладки SQL (SQL). Затем, как показано на рисунке 43.3, щелкните на кнопке Browse (Обзор) и найдите файл резервной копии. База данных MySQL должна автоматически импортировать и выполнить резервную копию, что может занять некоторое время. В действительности, если ваша резервная копия занимает больше 2 Мб, то данный метод не сработает; вам придется положить файл резервной копии на ваш сервер через FTP и попросить администратора сервера (компании, предоставляющей хостинг, если вы пользуетесь услугами таковой) импортировать этот файл через командную строку MySQL,

В командной строке надо написать что-то типа этого: rayaql -h serve г name -u username -p databasename < backup_f ilename. Таинственно, да?

Администратор просто напишет вместо выделенных курсивом слов соответствующие данные, и у вас все будет в порядке.

На данный момент вы сделали только половину: создали резервную копию базы данных. Вам также следует сделать стандартную копию файлов PHP-Nuke, которую очень просто загрузить через FTP, используя прикладную FTP программу, которая может сразу скопировать целиком все файлы вашего сайта на ваш локальный компьютер, Я использую бесплатно распространяемое приложение BatchFTP (www.batchftp.net), которое выполняет эту задачу. Поскольку большинство изменение PHP-Nuke происходят в базе данных, то вам просто необходимо делать резервные копии файлов раз в несколько месяцев или чаще и. определенно, до и после каких-либо обновлений версии PHP-Nuke. Выполнение дублирования базы данных не может быть очень частым; вполне достаточно делать это раз в неделю для медленного сайта, а для загруженных сайтов это лучше делать каждую ночь. Учитывая то, что создание резервной копии занимает всего несколько секунд, а на восстановление сайта может уйти длительное время, вам стоит создавать резервные копни.