Как импортировать и экспортировать базы данных в MySQL или MariaDB

Вступление

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

Работа с дампами базы данных в MySQL и MariaDB довольно проста. Этот туториал покажет, как экспортировать базу данных, а также импортировать ее из файла дампа в MySQL и MariaDB.

Предпосылки

Для импорта и / или экспорта базы данных MySQL или MariaDB вам потребуется:

  • Доступ к серверу Linux под управлением MySQL или MariaDB

  • Имя базы данных и учетные данные пользователя для нее

Экспорт базы данных

Консольная утилитаmysqldump используется для экспорта баз данных в текстовые файлы SQL, что упрощает их перенос и перемещение. Вам понадобится само имя базы данных, а также имя пользователя и пароль для учетной записи с привилегиями, обеспечивающими как минимум полный доступ только для чтения к базе данных.

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

mysqldump -u username -p database_name > data-dump.sql
  • username - это имя пользователя, под которым вы можете войти в базу данных

  • database_name - это имя базы данных, которая будет экспортирована

  • data-dump.sql - это файл в текущем каталоге, в который будет сохранен вывод.

Команда не выдаст визуального вывода, но вы можете проверить содержимоеfilename.sql, чтобы проверить, является ли это допустимым файлом дампа SQL, выполнив следующую команду:

head -n 5 data-dump.sql

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

SQL dump fragment-- MySQL dump 10.13  Distrib 5.7.16, for Linux (x86_64)
--
-- Host: localhost    Database: database_name
-- ------------------------------------------------------
-- Server version       5.7.16-0ubuntu0.16.04.1

Если в процессе экспорта возникнут какие-либо ошибки,mysqldump вместо этого четко выведет их на экран.

Импорт базы данных

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

Сначала войдите в базу данных какroot или другой пользователь с достаточными привилегиями для создания новых баз данных:

mysql -u root -p

Это приведет вас к приглашению оболочки MySQL. Затем создайте новую базу данных с помощью следующей команды. В этом примере новая база данных называетсяnew_database:

CREATE DATABASE new_database;

Вы увидите этот вывод, подтверждающий, что он был создан.

OutputQuery OK, 1 row affected (0.00 sec)

Затем выйдите из оболочки MySQL, нажавCTRL+D. Из обычной командной строки вы можете импортировать файл дампа с помощью следующей команды:

mysql -u username -p new_database < data-dump.sql
  • username - это имя пользователя, под которым вы можете войти в базу данных

  • newdatabase - это имя только что созданной базы данных

  • data-dump.sql - файл дампа данных для импорта, расположенный в текущем каталоге

Если команда выполняется успешно, она не выдаст никакого вывода. Если в процессе возникнут какие-либо ошибки,mysql вместо этого выведет их на терминал. Вы можете проверить, что база данных была импортирована, снова войдя в оболочку MySQL и проверив данные. Это можно сделать, выбрав новую базу данных с помощьюUSE new_database, а затем используяSHOW TABLES; или аналогичную команду для просмотра некоторых данных.

Заключение

Теперь вы знаете, как создавать дампы баз данных из баз данных MySQL, а также как их снова импортировать. mysqldump имеет несколько дополнительных настроек, которые можно использовать для изменения способа создания дампов, о которых вы можете узнать больше изofficial mysqldump documentation page.

Related