🐹 CentOS 7: Экспорт и импорт базы данных MariaDB через консоль.

Содержание:

1. Постановка задачи.
2. Решение задачи.

2.1. Кодировка базы данных.
2.2. Импорт базы данных.
2.3. Экспорт базы данных.

3. Оригиналы источников информации.


1. Постановка задачи.

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

В инструкции будет описан способ импорта/экспорта MariaDB базы данных через ssh (консоль, терминал).

2. Решение задачи.

2.1. Кодировка базы данных.

Стоит иметь в виду, что стандартная кодировка для MariaDB – это UTF-8, поэтому если у вас кодировка, импортируемой базы данных, WindowsCP1251, то стоит до импорта ее перекодировать в правильную.

Для этого есть команда iconv:

# iconv -f CP1251 -t UTF-8 /home/user/base.sql > /home/user/base.utf8.sql

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

Сама команда импорта выглядит так:

# mysql -h ip-сервера -u имя_пользователя -p имя_базы_данных < /путь_до_базы/base.sql

Если сам сервер MariaDB находится на том же сервере, что и файлы сайта, команду можно немного сократить.

# mysql -uroot -proot_pass db_name < db_name.sql

Но если, например, база уже создана, то импорт может оказаться неудачным.

Самым лучшим выходом из ситуации будет импорт напрямую через консоль MariaDB:

Заходим в MariaDB:

# mysql -uLogin -pPassword

Вместо Login и Password вводим данные для авторизации пользователя баз данных.

Выбираем базу данных:

> use db_name

Вместо db_name вводим название базы данных.

Делаем импорт файла в выбранную базу данных:

> source /путь_до_дампа/db_name.sql

Вместо db_name.sql вводим название файла дампа базы данных или путь до файла, если вы находитесь не в той же папке, где лежит файл.

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

Делаем экспорт посредством удобного mysqldump:

# mysqldump -uLogin -pPassword db_name > /путь_до_дампа/db_name.sql

Можно экспортировать все базы данных:

# mysqldump -uLogin -pPassword --all-databases > /путь_до_дампа/db_name.sql

3. Оригиналы источников информации.

  1. blog.xfanis.ru «Импорт базы данных Mysql через консоль (терминал, ssh)».

Читайте также: