Команды Linux (restore MySQL)

Теги

Всегда полезно делать частые резервные копии баз данных MySQL или MariaDB (restore MySQL). Потенциально они могут содержать тысячи строк незаменимых данных.

Многие пользователи поначалу могут запутаться в том, как создавать резервные копии баз данных (restore MySQL), поскольку этот процесс довольно сильно отличается от резервного копирования обычных файлов. Также необходимо знать процесс восстановления резервной копии, поскольку нет смысла иметь резервную копию, если пользователь не может снова восстановить ее.

В этой заметке мы рассмотрим различные примеры командной строки для резервного копирования и восстановления баз данных MySQL или MariaDB в системе Linux. Вы можете использовать эти команды для регулярного резервного копирования баз данных или даже добавить их в сценарий Bash, который будет выполнять большую часть работы за вас. Другой вариант - настроить cron для регулярного создания резервных копий баз данных по расписанию.

Следующие команды будут работать независимо от того, используете ли вы MySQL Server или MariaDB. В наших примерах мы создаем резервную копию базы данных под названием mydata с учетной записью MySQL root. Вам нужно будет подставить свои собственные значения и помнить, что выбранный вами пользователь должен иметь права на использование базы данных. Или же вы всегда можете использовать учетную запись MySQL root, как в данном примере.

Для резервного копирования базы данных в файл с именем mydata-backup.sql используйте следующий синтаксис команды. При вводе команды будет запрошен пароль. 

$ mysqldump -u root -p mydata > mydata-backup.sql

Если вам нужно избежать запроса пароля, как, например, в сценарии Bash, то вы можете поместить пароль в саму команду, используя опцию --password. 

$ mysqldump -u root --password="mypassword" mydata > mydata-backup.sql

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

$ mysqldump -u root -p mydata > /home/linuxconfig/mysql/mydata-backup.sql

Для одновременного резервного копирования более чем одной базы данных, вы можете перечислить их отдельно в команде после опции --databases. В этом примере мы создадим резервные копии баз данных mydata и accounting. 

$ mysqldump -u root -p --databases mydata accounting > mydata-backup.sql

Вы также можете создать резервную копию сразу всех баз данных MySQL или MariaDB, указав опцию --all-databases. 

$ mysqldump -u root -p --all-databases > mydata-backup.sql

Не стесняйтесь адаптировать эти команды по мере необходимости, или превратить их в сценарий Bash, или вставить их в cron для автоматического резервного копирования.

Как восстановить резервную копию базы данных MySQL или MariaDB. Резервная копия базы данных MySQL/MariaDB хранится в виде файла .sql. Эта команда восстановит данные нашей базы данных в базу данных mydata из предыдущих примеров. 

$ mysql -u root -p mydata < mydata-backup.sql

Если ваш файл резервной копии содержит несколько баз данных, вы можете выбрать, какие из них восстанавливать, используя в команде флаг --one-database. 

$ mysql --one-database mydata < mydata-backup.sql

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


MySQL — свободная реляционная система управления базами данных.

 

Последние материалы