Делаем дамп базы MySQL по SSH

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

 

Итак. Подключаемся по SSH к нашему серверу. И в командной строке набираем нужную нам команду. А команды будут такими...

 

Чтобы создать бекап базы MySQL (экспортировать базу данных) набираем

mysqldump -u пользователь_БД -p имя_БД > имя_файла

 

 

К примеру есть у нас база сайта про коллекционные фантики fantik. Владельцем базы прописан vasia. И сохранить мы хотим в файл fantik_2015.sql. Значит набираем  mysqldump -u vasia -p fantik > fantik_2015.sql Значок > показывает что мы вывод программы направляем в файл с именем fantik_2015.sql. Как видите все просто. Набрали, нажали Enter и на экран вылезет предложение ввести пароль от базы. Вводите и программка начинает работать, если база большая, то это может занять некоторое время.

Можно добавить всякие дополнительные ключи, например сразу прописать пароль и тогда если у вас пароль типа 4Gvx9tRa, то команда примет вот такой вид mysqldump -u vasia -p4Gvx9tRa fantik > fantik_2015.sql. Заметьте, что после ключа -p пароль идет сразу, без пробела.

Если требуется положить дамп сразу куда-то в определенное место, то можно еще усложнить команду и прописать в ней желаемый путь:

mysqldump -u vasia -p4Gvx9tRa fantik > /home/vasia/data/backup/fantik_2015.sql

 

Часто размер дампа базы получается весьма и весьма немаленький. Поскольку дамп базы это обычный текстовый файл, то он хорошо архивируется, что позволяет уменьшить его размер в разы, а это сильно облегчает дальнейшее выкачивание. Для архивации можно набрать tar -zcvf имя_архива архивируемая_папка(или файл). В нашем случае это будет

tar -zcvf fantik.tar.gz fantik_2015.sql

 

Распаковать обратно почти такой же командой

tar -xzvf fantik.tar.gz fantik_2015.sql

 

  • «c» — значит, что создается новый архив;
  • «x» — распаковывается имеющийся архив;
  • «f» — посредством этого флага задается имя создаваемого архива;
  • «z» — архивация будет происходить посредством архиватора gzip;
  • «v» — в консоль будет выводиться информация о процессе архивации.

 

При желании можно опять же усложнить нашу исходную команду совместив создание дампа с его архивацией. Тогда строка станет выглядеть примерно так:

mysqldump -u vasia -p4Gvx9tRa fantik | tar -zcvf > /home/vasia/data/backup/fantik_2015.tar.gz

 

Если вам категорически не нравится архиватор tar, то можете воспользоваться более привычным zip. Тогда строка будет выглядеть так:

zip fantik.zip fantik_2015.sql

 

Для распаковки надо будет набрать

unzip fantik.zip

 

 

Обратный процесс (импорт базы данных MySQL) производится с помощью вот такой команды:

mysql -u пользователь_БД -p имя_БД < файл_дампа_БД

 

В нашем случае это будет выглядеть так:

mysql -u vasia -p4Gvx9tRa fantik < fantik_2015.sql

 

Как видите ничего особо сложного. Можно заранее подготовить для себя "шпаргалки" с нужной командной строкой и хранить где нибудь в текстовой файлике. Главное чтобы содержимое файлика не попало к злым хакерам, иначе будет очень весело.

 

You have no rights to post comments