MySQL: резервное копирование и восстановление базы данных с mysqldump
В этой статье вы найдете простые и эффективные способы создания резервной копии и восстановления базы данных MySQL при помощи утилиты mysqldump. Если вы хотите сохранить свои данные или восстановить их в случае потери, то эта статья для вас! Мы предоставим вам подробное экспертное руководство по созданию резервной копии и восстановлению базы данных MySQL с использованием mysqldump, а также дадим ценные советы и рекомендации.
- Как создать резервную копию базы данных MySQL
- Как восстановить базу данных MySQL из резервной копии
- Вопросы и ответы
- Комментарии
С целью резервирования баз данных MyISAM, лучше использовать инструмент mysqlhotcopy, который мы обязательно опишем в следующих статьях, так как с ними он работает быстрее и эффективнее.
С помощью mysqldump, можно как создавать резервную копию локальных баз данных, так и восстанавливать их на удалённых базах данных. В данной статье рассмотрим несколько практических примеров резервирования восстановления баз с помощью mysqldump.
Базовыми командами для создания резервной копии и восстановления базы данных MySQL с помощью mysqldump есть:
-
Создание резервной копии:
# mysqldump –u[пользователь] –p[пароль_пользователя] [имя_базы] > [название_файла_резервной_копии_базы].sql
Например:
# mysqldump -uroot -pqwerty my_db > my_db-dump1.sql
-
Восстановление резервной копии:
# mysql -u[пользователь] -p[пароль_пользователя] [имя_базы] < [название_файла_резервной_копии_базы].sql
Например:
# mysql -uroot -pqwerty my_db < my_db-dump1.sql
В данных командах:
-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.
Как создать резервную копию базы данных 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 из резервной копии
Восстановить базу данных MySQL из резервной копии, созданной любым из выше описанных способов можно одним стандартным способом, который описан в начале статьи.
1. Используйте строгие права доступа к файлам бэкапа, чтобы исключить несанкционированный доступ.
2. Храните бэкапы в зашифрованном виде, чтобы исключить несанкционированный доступ к данным.
3. Используйте резервное копирование для хранения бэкапов на удаленных серверах, чтобы исключить потерю данных.
4. Регулярно обновляйте бэкапы, чтобы исключить устаревание данных.
5. Проверяйте целостность бэкапов, чтобы удостовериться, что они работоспособны.
Для резервного копирования базы данных MySQL с помощью mysqldump необходимо выполнить следующие действия:
1. Открыть терминал или командную строку.
2. Ввести команду mysqldump, передав необходимые параметры:
mysqldump -u [username] -p [password] [database_name] > [backup_file.sql]
где:
-u [username] - имя пользователя MySQL;
-p [password] - пароль пользователя MySQL;
[database_name] - имя базы данных;
[backup_file.sql] - имя файла резервной копии.
3. Нажмите Enter, чтобы выполнить команду.
1. Восстановление из резервной копии.
2. Восстановление из транзакционного журнала.
3. Восстановление через утилиту mysqldump.
4. Восстановление через утилиту mysqlhotcopy.
5. Восстановление через прямое копирование файлов базы данных.