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

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


Автор выбрал программу Write for DOnations.

Введение

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

В этом руководстве вы будете работать с дампами базы данных в MariaDB (команды взаимозаменяемы). В частности, вы экспортируете базу данных, а затем импортируете эту базу данных из файла дампа.

Предпосылки

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

  • Виртуальная машина с пользователем sudo без полномочий root. Если вам нужен сервер, заполните этот список и следуйте нашему Руководству по начальной настройке сервера.
  • Установлены MySQL или MariaDB. Чтобы установить MySQL, следуйте нашему руководству How To Install MariaDB.
  • Образец базы данных, созданный на вашем сервере баз данных. Чтобы создать ее, следуйте \Создание образца базы данных в нашем руководстве \Введение в запросы в MySQL.

Примечание. В качестве альтернативы ручной установке вы можете изучить приложение MySQL One-Click от DigitalOcean Marketplace.

Шаг 1 — Экспорт базы данных MySQL или MariaDB

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

Используйте mysqldump для экспорта базы данных:

  1. mysqldump -u username -p database_name > data-dump.sql

  • username – это имя пользователя, под которым вы можете войти в базу данных
  • database_name – имя базы данных для экспорта.
  • data-dump.sql — это файл в текущем каталоге, в котором хранятся выходные данные.

Команда не выводит визуальный вывод, но вы можете проверить содержимое data-dump.sql, чтобы убедиться, что это законный файл дампа SQL.

Выполните следующую команду:

  1. 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 выведет их на экран.

Шаг 2 — Импорт базы данных MySQL или MariaDB

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

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

  1. mysql -u root -p

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

  1. CREATE DATABASE new_database;

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

Output
Query OK, 1 row affected (0.00 sec)

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

  1. 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.

Чтобы узнать больше о MySQL, посетите нашу страницу ресурсов MySQL.

Чтобы узнать больше о запросах MySQL, ознакомьтесь с нашим руководством «Введение в запросы в MySQL».