Поиск по сайту:

Как сделать резервную копию и восстановить базы данных MySQL/MariaDB в Linux


В этой статье показано несколько практических примеров выполнения различных операций резервного копирования баз данных MySQL/MariaDB с помощью команды mysqldump, а также мы увидим, как их восстановить с помощью Команды mysql и mysqlimport в Linux.

mysqldump — это клиентская программа командной строки. Она используется для создания дампа локальных или удаленных баз данных MySQL или коллекций баз данных для резервного копирования в один простой файл.

Мы предполагаем, что у вас уже установлен MySQL в системе Linux с правами администратора, и мы полагаем, что у вас уже есть небольшие знания о MySQL. .

Если у вас не установлен MySQL или вы не знакомы с MySQL, прочтите наши статьи ниже.

  • Как установить MySQL в дистрибутивах на основе RHEL
  • Как установить MySQL в Rocky Linux и AlmaLinux
  • Как установить MySQL в Ubuntu Linux
  • Как установить MySQL в Debian
  • 20 команд MySQL (Mysqladmin) для администрирования баз данных в Linux
  • 12 лучших практик обеспечения безопасности MySQL/MariaDB для Linux

Как сделать резервную копию базы данных MySQL в Linux?

Чтобы создать резервную копию баз данных или баз данных MySQL, база данных должна существовать на сервере базы данных, и у вас должен быть доступ к ней. Формат команды будет таким.

mysqldump -u [username] –p[password] [database_name] > [dump_file.sql]

Параметры указанной команды следующие.

  • [имя пользователя]: допустимое имя пользователя MySQL.
  • [пароль]: действительный пароль MySQL для пользователя.
  • [имя_базы_данных]: допустимое имя базы данных, для которой требуется создать резервную копию.
  • [dump_file.sql]: имя файла резервной копии, который вы хотите создать.

Как сделать резервную копию одной базы данных MySQL?

Чтобы создать резервную копию одной базы данных, используйте команду следующим образом. Команда выгрузит структуру базы данных [rsyslog] с данными в один файл дампа с именем rsyslog.sql.

mysqldump -u root -ptecmint rsyslog > rsyslog.sql

Как сделать резервную копию нескольких баз данных MySQL?

Если вы хотите сделать резервную копию нескольких баз данных, выполните следующую команду. Команда в следующем примере создает резервную копию структуры и данных баз данных [rsyslog, syslog] в один файл с именем rsyslog_syslog.sql.

mysqldump -u root -ptecmint --databases rsyslog syslog > rsyslog_syslog.sql

Как сделать резервную копию всех баз данных MySQL?

Если вы хотите создать резервную копию всех баз данных, используйте следующую команду с опцией –all-database. Следующая команда создает резервную копию всех баз данных с их структурой и данными в файле с именем all-databases.sql.

mysqldump -u root -ptecmint --all-databases > all-databases.sql

Как сделать резервную копию только структуры базы данных MySQL?

Если вам нужна резервная копия только структуры базы данных без данных, используйте в команде опцию –no-data. Приведенная ниже команда экспортирует базу данных [rsyslog] Structure в файл rsyslog_structure.sql.

mysqldump -u root -ptecmint -–no-data rsyslog > rsyslog_structure.sql

Как сделать резервную копию только данных базы данных MySQL?

Для резервного копирования данных без структуры используйте параметр –no-create-info с командой. Эта команда переносит базу данных [rsyslog] Data в файл rsyslog_data.sql.

mysqldump -u root -ptecmint --no-create-db --no-create-info rsyslog > rsyslog_data.sql

Как сделать резервную копию одной таблицы базы данных?

С помощью приведенной ниже команды вы можете сделать резервную копию одной таблицы или определенных таблиц вашей базы данных. Например, следующая команда берет только резервную копию таблицы wp_posts из базы данных wordpress.

mysqldump -u root -ptecmint wordpress wp_posts > wordpress_posts.sql

Как сделать резервную копию нескольких таблиц базы данных?

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

mysqldump -u root -ptecmint wordpress wp_posts wp_comments > wordpress_posts_comments.sql

Как сделать резервную копию удаленной базы данных MySQL

Приведенная ниже команда переносит резервную копию базы данных [172.16.25.126] удаленного сервера [gallery] на локальный сервер.

mysqldump -h 172.16.25.126 -u root -ptecmint gallery > gallery.sql

Как восстановить базу данных MySQL?

В приведенном выше руководстве мы увидели, как создавать резервные копии только баз данных, таблиц, структур и данных, теперь мы увидим, как восстановить их, используя следующий формат.

# mysql -u [username] –p[password] [database_name] < [dump_file.sql]

Как восстановить одну базу данных MySQL

Чтобы восстановить базу данных, необходимо создать пустую базу данных на целевом компьютере и восстановить ее с помощью команды msyql. Например, следующая команда восстановит файл rsyslog.sql в базе данных rsyslog.

mysql -u root -ptecmint rsyslog < rsyslog.sql

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

mysqlimport -u root -ptecmint rsyslog < rsyslog.sql

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