Как сделать бэкап вашего сайта(backup, резервное копирование), чтобы потом не было мучительно больно

6 ноября, 2010, База знаний

Для чего нужно делать полную копию БД и данных вашего сайта? На этот вопрос вы никогда не дадите ответ, пока не ощутите всю важность резервного копирования на своей шкуре. Как говорится, «пока гром не грянет — мужик не перекрестится». Так и здесь. Именно поэтому сегодня я затрону тему резервного копирования данных сайтов неспроста. Вынудили меня написать о методах копирования и создания бэкапов следующие факты: за последний месяц  у меня успели обнулиться все базы данных на сайтах(постарался хостер, но благодаря бэкапам все восстановлено) и сегодня один из сайтов был взломан(бд не пострадала). Поэтому, товарищи, скажу вам с полной уверенностью, что резервное копирование(backup) — это вынужденная необходимость. Просто потому что так надо. И если вы заранее не примете к сведению и не позаботитесь об этом, то в один прекрасный момент из-за вашей беспечности все может закончится плачевно, а вам может стать мучительно больно.

Конечно, самый первый совет, который можно дать любому вебмастеру — это подбирать хостера, который будет делать бэкапы ежедневно. Если же хостер не задумывается о данном сервисе, то его надо гнать поганой метлой и никогда не иметь с ним сотрудничества. Но обо всем по порядку. Так же не стоит забывать, что кроме копии БД обязательно нужно параллельно делать копию самого сайта и его данных. Вообще, честно говоря, потеря данных по той или иной причине может произойти с вами в любой день. И при отсутствии полной копии сайта, потерянного в результате наводнения, урагана, рейдерства, взлома, халатности хостера или вашей собственной, утрата может быть невосполнима.

Создание копии вашей БД

Есть несколько способов копирования баз данных вашего сайта:

1) Копирования БД специальным скриптом(через ssh, плагином и т.д.)

2) Ручное копирование через PhpMyAdmin

Скрипты

Добрые создатели скриптов уже давно сделали для каждой популярной CMS свой скрипт копирования БД. Для Joomla — это компонент Akeeba Backup(раньше был JoomlaPack), для WordPress  - это плагин WP-DB-Backup, для Drupal — плагин Backup and Migrate. Конечно, можно пользоваться специализированным скриптом, и пользователям одной CMS, безусловно, удобнее использовать уже готовый продукт под свою контент-систему. Но универсальность скриптов, конечно, от этого страдает.

Мы не будем рассматривать плагины и компоненты под отдельную систему, сразу перейдем к универсальной примочке, которая подойдет для любого вашего сайта на БД. Для резервного копирования мы возьмем популярный плагин Sypex Dumper(последняя версия — 2.0.7)

Pro версию Дампера скачивать не рекомендую, так как велик шанс, что она у вас может не заработать, так как для неё нужен Zend Optimizer.

Мануал скрипта прост:

1) Скачиваем скрипт с официального сайта(ссылка выше).

2) Заливаем папку со скриптом к себе на хостинг.

3) Читаем Readme.txt и меняем CHMOD на некоторые папки: 777 на backup(советую вам ставить все же 755 для безопасности),  666 для файлов cfg.php и ses.php.

Дальше набираем в строке браузера: http://вашдомен.ru/sxd и радуемся запущенному скрипту.  Все остальные шаги сводятся к вводу имени\пароля к БД и собственно самому дампу базы. Я полагаю, что это интуитивно понятно.

Вот подробный список ваших действий, следите за стрелочками:

Tutorial Sympex

Для любителей cron скрипт так же является вкусным, ибо имеет его поддержку. Небольшой мануал от создателей Sypex для любителей консольного метода:

Доступны следующие аргументы:

  • -h=localhost — MySQL-хост
  • -o=3306 — порт
  • -u=root - пользователь
  • -p=password — пароль
  • -j=my_job — имя сохраненной задачи для выполнения

Обязательным является только аргумент -j с именем сохраненной задачи для выполнения, все остальные нужно указывать в том случае, если они отличаются от данных сохраненных в конфиге.

PhpMyAdmin

Безусловно, лично для меня копирование БД через Phpmyadmin является наиболее приемлемым, так как оно наиболее простое, если понять, что к чему. Пхпмайадмин — это скрипт-надстройка, который может быть предустановлен вашим хостером для удобства работы с БД. Большинство нормальных хостингов его в пакете услуг предоставляют.

Дамп БД с помощью Phpmyadmin происходит в два шага.

Первый — это вход в саму админку пхпмайадмин, затем нажатие на кнопку «Экспорт».

Затем, после того, как мы попали в меню «Экспорт», мы выбираем базы данных, вид их экспорта(надежнее оставить sql) и сжатия(рекомендую gzip) и жмем ok.

Все, база данных уже у вас на компьютере. Эврика!

Navicat

Программа для продвинутого копирования ваших БД. Полная версия — платная, поэтому нужно качать Lite. Инструмент очень серьезный и поможет вам забыть о головной боли, связанной с бэкапами. Однако, как я понял после тестинга софта, возможность делать бэкапы с некоторой периодичностью доступна только в версии Pro. Версия же Lite сделана, как я понял, не функциональна и работает лишь как витрина для pro версии. Но кому все же интересно взглянуть или если кто-то готов купить лицензию,  качаем отсюда.

Копирование файлов вашего сайта с хостинга

Создание копий БД становится совершенно бессмысленным занятием, если у вас нет копий физических данных вашего сайта, а именно исполнительных файлов, документов, картинок, музыки и всего прочего, что составляет непосредственно контент вашего сайта. Необходимо периодически перекачивать с хостинга к себе на компьютер, а дальше на другие носители сайты целиком.

В этом нам помогут две утилиты.

Alfaungzipper

Данный скрипт был написан очень и очень давно(в далеком 2005-ом году) и анонсирован на форуме альфаспэйса(forum.alfaspace.net) разработчиком acsid. Пользуясь случаем, передаю ему пламенный привет.  Alfaungzipper позволяет заархивировать все ваши данные. В итоге у вас получится один архив с расширением .gz. Плюсов очень много, так как скрипт умеет:

» сохранять структуру сайта
» распаковывать бэкап сайта с определёнными правами на каталоги, файлы и группы файлов

Главное, что сайт в получившемся архиве может весить меньше в 2-8 раз за счет одного только сжатия. Скрипт можно скачать здесь: http://alfaungzipper.com/ru/download.html

SatCommander

Программка для отслеживания доменов ваших сайтов. Оповещает, когда домены необходимо продлить. Помимо этого, имеет отличную функцию, которая нам и понадобится. Может подключаться к ftp и с заданным интервалом копировать полностью ваш сайт в отдельную директорию. Сам не пробовал, но штука, по всей видимости, очень удобная.

В общем-то, самый простой способ копирования данных — это подключение по ftp к вашему сайту(через TC, FlashFXP, Filezilla, Cuteftp или что вашей душе угодно) и создание на локальном диске полную копию всех данных. Делать это периодически нужно для всех сайтов в зависимости от скорости обновляемости на нем новостей и прочего контента.

Подытожив, можно сказать, что с помощью всех тех инструментов, о которых я написал, можно забыть о невзгодах, которые могут вас настигнуть в случае непредвиденных обстоятельств. Надо лишь почаще вспоминать о необходимости делать копии или поставить это на автоматические рельсы с помощью софта.

Берегите свои сайты. Silencio por favor.


  1. Не жалею что потратил пару минут на чтение. Пишите почаще еще непременно зайду почитать что-то новенькое.

  2. Михаил:

    Для WordPress лучше пользоваться плагином BackWPup -(он копирует сразу и базу данных и файлы)и сервисом Dropbox — бэкапы отправляются на удалённый компьютер и на домашний автоматом.Подробности здесь http://kuzmih.com/post_1317818450.html и здесь http://kuzmih.com/post_1318960770.html

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Можно использовать следующие HTML-теги и атрибуты: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>