Как сделать бэкап сайта и базы данных MySQL

Как сделать бэкап сайта и базы данных MySQL

На написание данной статьи меня натолкнул факт, что я постоянно вижу на различных форумах вопросы от новичков — как сделать бэкап сайта, бэкап базы данных mysql или другими словами резервные копии файлов. Собственно хочу поделиться с вами некоторыми небольшими «секретами» — как это делается быстро, постоянно и без лишних телодвижений.

Думаю что эта статья будет интересна не только новичкам, но и тем кто давно уже имеет свои сайты, но не любит экспериментов и пользуется дополнительными плагинами для своей CMS, которые создают бэкап в автоматическом режиме.

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

acronis disk director

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

[tabs style=»1″]
[tab title=»Бэкап через панель хостинга»]

Это пожалуй самый простой способ бэкапить сразу целиком сайт и базу данных mysql. На любом мало-мальски нормальном хостинге имеется такая функция в панели, будь то cPanel, DirectAdmin или ISP-Менеджер.

Бэкап сайта в ISP-Менеджер

Заходим в ISP-менеджер и находим слева в колонке управления, меню для создания задания на бэкап. Кликаем по пункту для добавления задания. Далее добавляем задание резервного копирования

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

Бэкап сайта можно делать как на локальный сервер, т.е. на тот где находится сам сайт, так и на удаленный через FTP. Для этого нужно выбрать где сохранять резервную копию и после выбора вам откроются дополнительные настройки с указанием сервера FTP, логина и пароля от него. Когда все настройки задания резервного копирования установлены, нажимаем «сохранить» и запускаем задание.

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

После того как бэкап создан, его можно скачать на свой компьютер или же на FTP-хранилище.

Бэкап сайта в cPanel

Здесь все практически то же самое что и с ISP, просто немного различается внешний вид панели и расположение пунктов меню. Ниже вы можете посмотреть видео не совсем по бэкапу, но получите эллементарное понятие по работе с самой cPanel.

Бэкап сайта через DirectAdmin

Аналогично первым двум панелям, в панели DirectAdmin тоже имеется функция по созданию резервных копий. В видео вы увидите как создавать бэкапы через DirectAdmin и как можно копировать файлы к себе на компьютер с помощью различных программ, в данном видеоуроке при помощи Total Commander.

[/tab]
[tab title=»Альтернативный способ бэкапа»]

Как я уже писал в самом начале, если у вас сайт большой и занимает много места на диске, то делать резервные копии через панель хостинга будет не совсем удобно, громоздко и хлопотно. А копирование файлов через программы FTP к себе на устройство (компьютер), это долгая история, особенно если у вас медленное интернет-соединение.

Поэтому рассмотрим альтернативный способ создания бэкапа сайта и баз данных MySQL. Этим способом пользуюсь уже очень давно и могу бэкапы сайтов создавать даже вдалеке от дома прямо с обыкновенного телефона 🙂

В большинстве случаев бэкапить нужно не полностью весь сайт, а только изменения которые вы вносите. Что у нас постоянно меняется? В первую очередь — это конечно же база данных MySQl, вот ее и нужно постоянно сохранять в обновленном виде. Т.е. хотя бы раз в сутки и всегда при каких-то изменениях, например когда добавляете новую статью.

Сделать дамп БД MySQL можно двумя способами:

1. Бэкап базы данных MySQl через phpMyAdmin

Заходим в phpMyAdmin выбираем базу с которой нам нужно создать дамп. Далее находим вверху меню «Экспорт» и кликаем по нему. В соответствующем окне нужно будет выбрать таблицы для дампа. Если собираетесь делать бэкап всей базы данных (а лучше так и делать), то пропускаем это окно и идем в самый низ, находим там как сохранить файл. Я обычно сохраняю в формате .gz , так как он на мой взгляд является самым оптимальным.

Этот способ имеет ряд недостатков, особенно если делать резервную копию базы большой по объему.

2. Бэкап базы данных MySQL с помощью SypexDumper

Этим способом можно создавать дамп даже очень больших баз данных, причем быстро и без лишних телодвижений). Для начала вам нужно скачать SypexDumper.
Извлеките содержимое архива SypexDumper к себе на хостинг в папку которую назовите как вам вздумается. Скрипт для входа защищен паролем, но лучше папку с ним называйте так, чтобы никто не догадался о ее существовании, это будет дополнительной мерой безопасности.
Затем перейдите по адресу http://ваш_сайт/папка_с_SypexDumper/ и выполните вход в ваш аккаунт phpMyAdmin. По умолчанию вы сразу попадаете в экспорт дампа. Поэтому никаких сложностей нет и особо никаких настроек не нужно делать. После завершения работы скрипта, скачиваем созданный архив с бэкапом базы данных.
Архив сохраняется в подпапке скрипта /backup/ и потом из него можно в любой момент восстановить базу.

Вся прелесть этого скрипта заключается в его способности работать с огромными базами. Если стандартно через phpMyAdmin даже в 10 Мбайт база начинает доставлять проблему с заливкой ее частями, то в Sypex Dumper база в 100 или больше Мбайт не доставит никаких хлопот. Просто нажали кнопочку, подождали и получили результат.
Кроме того, скрипт имеет ряд дополнительных полезных функций, об этом можете почитать на официальном сайте скрипта или в файле readme_ru.txt который находится в архиве.

После того как у вас сделан бэкап базы данных MySQL, вам всего лишь останется упаковать те файлы которые были изменены при обновлении сайта. Не буду углубляться в подробности, так как на разных сайтах и разных движках (CMS) это все по разному. Вы должны сами знать что у вас на сайте меняется))

Для примера только напишу, что в WordPress например, при добавлении статьи, с файлами или без, из файлов на сайте меняется только то, что находится в директории /wp-content/.
Т.е. вам постоянно нужно создавать резервную копию только базы данных и папки /wp-content/ и упаковывать каждый раз весь сайт целиком не имеет смысла.
[/tab]
[/tabs]

Вот собственно я и рассказал о том как быстро и не сложно сделать бэкап сайта и базы данных MYSQL. А как восстанавливать сайт из бэкапа — об этом поговорим в следующей статье 🙂

Обсуждение:

  1. А можно как не будь зделать такой бекап только не своего сайта т.е без доступа к Админке (хостингу)

    1. Нет конечно 🙂 Если только сайт не взломать. Если бы такое было возможно, то все воровали бы сайты друг у друга.

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

    1. Здесь разве в статье конкретно о WordPress речь идет? 🙂 Тут в общем, о бэкапе речь шла, даже если сайт вообще на самописной CMS.

  3. Безусловно, в целях безопасности нужно регулярно выполнять бэкап своего сайта.

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

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