Импорт и экспорт баз данных 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 – файл в текущем каталоге, в который будут экспортированы данные.

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

head -n 5 data-dump.sql

Файл дампа MySQL должен начинаться примерно так:

-- 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;

На экране появится вывод, подтверждающий, что БД была создана:

Query 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 и MariaDB с помощью дампа. Утилита mysqldump имеет множество дополнительных параметров, при помощи которых можно настраивать дампы; подробнее об этом – в официальной документации mysqldump.

Tags: ,

Добавить комментарий