В данной статье рассмотрим несколько практических примеров резервирования восстановления баз с помощью mysqldump. Утилита mysqldump – это эффективный инструмент для создания резервной копии базы данных MySQL. Он позволяет создать *.sql файл с совокупностью (дампом) всех таблиц и данных основной базы данных (источника).
С целью резервирования баз данных MyISAM, лучше использовать инструмент mysqlhotcopy, который мы обязательно опишем в следующих статьях, так как с ними он работает быстрее и эффективнее.
С помощью mysqldump, можно как создавать резервную копию локальных баз данных, так и восстанавливать их на удалённых базах данных. В данной статье рассмотрим несколько практических примеров резервирования восстановления баз с помощью mysqldump.
Базовыми командами для создания резервной копии и восстановления базы данных MySQL с помощью mysqldump есть:
В данных командах:
-u – параметр, который указывает логин, с помощью которого в данном случае осуществляется подключение к базе данных;
-p – параметр, который указывает пароль пользователя данного логина. Если после данного параметра не указать пароль, то после запуска команды его необходимо будет ввести дополнительно;
[имя_базы] – имя базы данных, резервную копию которой необходимо создать;
[название_файла_резервной_копии_базы].sql – пользователь может указать любое удобное название файла резервной копии базы данных. Если указать название файла как в предоставленном примере, то резервная копия базы будет создана в папке из которой запускалась команда, а именно:
C:\Program Files\MySQL\MySQL Server 5.7\bin
Чтобы сохранить резервную копию базы в другой папке, перед названием файла резервной копии базы в команде, необходимо указать путь к такой папке. В таком случае команды создания и восстановления резервной копии базы будут выглядеть следующим образом:
# mysqldump -uroot -pqwerty my_db › C:\Users\Valery\Documents\MySQL_Backup\my_db-dump1.sql
# mysql -uroot -pqwerty my_db ‹ C:\Users\Valery\Documents\MySQL_Backup\my_db-dump1.sql
Далее рассмотрим разные варианты создания и восстановления резервной копии базы данных MySQL.
Чтобы создать резервную копию одной базы данных достаточно использовать стандартную команду, которая описана выше:
# mysqldump –u[пользователь] –p[пароль_пользователя] [имя_базы] › [название_файла_резервной_копии_базы].sql
Например:
# mysqldump -uroot -pqwerty my_db > my_db-dump1.sql
Прежде чем создавать резервную копию нескольких баз данных одновременно, идентифицируйте наличие баз данных.
Для этого введите команду show databases (в Workbench)
или # mysqlshow –uroot -p (в консоли).
Если необходимо одновременно создать резервную копию нескольких баз данных (например, my_db и test), то для этого необходимо выполнить такую команду:
# mysqldump -uroot -pqwerty –databases my_db test › my_db_test_backup.sql
Если есть необходимость создать бэкап всех баз данных вашего профайла MySQL, то это можно сделать с помощью параметра –all-databases.
# mysqldump -uroot -pqwerty –all-databases › all-databases_backup.sql
Также можно создать резервную копию отдельной таблицы базы данных. В случае, если необходимо создать копию таблицы wp_commentmeta из базы данных my_db, то команда будет выглядеть следующим образом:
# mysqldump -uroot -p my_db wp_commentmeta › table_ my_db-wp_commentmeta.sql
Примечание. Чтобы просмотреть список таблиц базы, введите команду:
#mysqlshow –uroot –p my_db
Восстановить базу данных MySQL из резервной копии, созданной любым из выше описанных способов можно одним стандартным способом, который описан в начале статьи.