Как сделать бэкап базы данных MySQL при лирическом настроении

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

От автора: что-то сегодня настроение какое-то лирически-меланхолическое. Наверное, на прошлогодний осенний лист я наступил, и от этого поплыл.… Так, лирику в сторону! Сегодня мы научимся, как сделать бэкап базы данных MySQL. Но все-таки жаль, что нельзя сделать «бэкап» времени!

Бэкапим легонько

Не будем сразу кидаться «в кусты с крапивой», и рассмотрим тему резервных копий с легких методов. Как всегда, начнем с нашей любимой графической оболочки phpMyAdmin. Рассмотрим, какими средствами создания в MySQL бэкапа базы обладает эта программа.

Заходим на сервер СУБД под учетной записью администратора. Затем слева выбираем базу, на которой будет тренироваться. Переходим на вкладку «Экспорт», и в разделе «Способ экспорта» отмечаем второй вариант («Обычный»).

После этого для редактирования станут доступны все возможные параметры бэкапа MySQL. Ниже в окне можно отметить конкретные таблицы базы, и создать только их копии. В поле «Вывод» активируйте вариант «Вывод в файл», и нажмите внизу «Ок». Копия базы данных сохранится в папке загрузки браузера.

Если честно, «господа-профессионалы программных наук», phpMyAdmin мне (как и вам) уже наскучил. Конечно, это «знатная» программная оболочка, обладающая «выдающимися» способностями в сфере администрирования СУБД. Но уже приелась!

Раз пошли такие «пляски», предлагаю испробовать что-то новенькое, и в качестве эксперимента для бэкапа базы данных MySQL использовать другую оболочку. Например, MySQL Admin.

Программная оболочка от авторов СУБД

Странно, но создатели столь популярной системы управления базами долгое время не пытались разработать для нее собственной графической оболочки. Но несколько лет назад появилась MySQL Admin. Хотя в данный момент поддержка программы ее создателями прекращена, но все-таки она обладает хорошим функционалом для бэкапа таблиц данных MySQL.
Чаще всего MySQL Admin используется как альтернатива phpMyAdmin, если размер резервируемой базы превышает 2 Мб. Это максимальный размер бэкапа, который поддерживается phpMyAdmin.

Скачиваем MySQL Admin, устанавливаем ее в файловую систему своего компьютера. Затем запускаем программу, и заполняем все поля параметров, которые нужны для подключения к серверу БД: название соединения, пароль, пользователя, хост и порт. Обратите внимание на последние два параметра. Их значение может отличаться для вашего ПК в зависимости от типа подключения (удаленно или локально) и используемой сборки.

Теперь переходим непосредственно бэкапу БД MySQL. В меню слева выбираем пункт «Backup».

Внизу нажимаем «New Project», в разделе «Schemata» выделяем нужную БД. Затем кнопкой с указателем направления перемещаем выделенный элемент в «Backup Content». Еще раз жмем на название базы, выделяем нужные таблицы и затем переходим по ссылке «Execute Backup Now».

Для окончания процесса бэкапа таблиц MySQL в появившемся диалоге проводника задаем имя файла резервной копии и папку для его сохранения.

Копия базы данной сохранена в указанной папке. Загляните в нее, и убедитесь в этом самостоятельно. Доверяй, но наличие бэкапа базы проверяй! Извините, последствие «наступа» на осенний лист 🙂

Использования MySQLDump

В набор встроенных средств СУБД входит MySQLDump, которая пригодится, чтобы сделать бэкап базы MySQL, когда «под рукой» нет специализированного ПО. Данная утилита не имеет собственного интерфейса, поэтому вся работа с ней происходит через командную строку. Запускаем cmd и переходим на тот диск и директорию, где хранится исполняемый файл утилиты:

Давайте немного поэкспериментируем с утилитой MySQLDump. Например, с помощью MySQL сделаем бэкап базы world и разместим его на рабочем столе. Код запроса:

Теперь заглянем на свой рабочий стол (в указанную папку), проверим ее содержимое.

Утилита справилась с возложенной на нее миссией, и создала дубликат заданной базы в указанном нами месте файловой системы ПК.

Многим покажется, что я привожу слишком простые примеры реализации, Конечно, можно рассмотреть бэкап MySQL rsync, но соваться без подготовки в «неизвестные дебри» новичкам не стоит. Как-нибудь в другой раз, когда мы все окрепнем в своих знаниях 🙂

Создание резервных копий средствами PHP

С самого первого знакомства с языком PHP он показался мне очень сложным, и даже неприветливым. Но затем, освоив правила синтаксиса, все стало на свои места. И теперь я и PHP стараемся дружить. Опять с меня лирика «прет»! Пардон, друзья.

Сейчас рассмотрим простейший пример бэкапа MySQL в PHP. Для этого мы будет использовать не совсем «средства языка». Из файла PHP мы запустим уже хорошо нам знакомую утилиту MySQLDump и передадим ей все нужные параметры для создания копии указанной базы.

Код примера занимает всего несколько строк, и все благодаря PHP-функции system(), которая запускает на выполнению внешнюю (системную) программу, переданную ей в качестве основного параметра. Ее синтаксис:

В общем, это полезная функция, которая нам пригодиться для создания MySQL бэкапа в Cети. Пример кода:

До боли знакомый код! И результат тоже почти идентичен предыдущему. Но ведь это PHP, и его возможности почти безграничны. Давайте немного «подшаманим» пример, и сделаем так, чтобы код бэкапа MySQL скрипта создавал копию БД, имя которой включает в себя дату ее «сотворения»:

Вот что мы получили: копию БД, имя файла которой включает в себя дату и время создания.

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

Ну, на сегодня все! Не знаю как вы, а я собираюсь потренироваться в «рифмоплетстве». До скорой встречи в следующей «поэме», посвященной администрированию и контролированию MySQL. Во, поперло…!

Метки:

Похожие статьи:

Комментарии Вконтакте:

Комментарии (1)