6.5.1 Как сделать импорт или экспорт базы данных через SSH? Работа с БД по SSH
Импорт/экспорт базы данных с помощью SSH
Для выполнения импорта Вам сначало необходимо загрузить дамп базы данных на сервер. Дамп должен быть в формате .sql
.
Далее, необходимо подключиться на сервер по SSH и выполнить команду:
В случае неудачи всегда будет указанна ошибка из-за которой импорт не удался или прервался.
Для экспорта существует утилита, которая позволяет сделать бэкап базы данных в традиционном SQL-формате – mysqldump. Общий вид в командной строке:
пользователь_БД
- имя пользователя базы данных, имеющего доступ к базе;пароль_пользователя
- пароль пользователя базы данных.имя_БД
- имя базы данных, которая создана на сервере;файл_дампа_БД
- это файл дампа в текущей директории.
Управление базами данных с помощью SSH
Помимо экспорта и импорта, использование SSH существенно упрощает и другие нюансы управления базами данных. Ниже несколько основных полезных примеров по использованию mysqldump и других:
Пример: как создать новую базу данных
Пример: как посмотреть список баз данных пользователя
Пример: как можно посмотреть список таблиц базы
Пример: команда с опцией -–all-databases
сохранит все базы данных на MySQL-сервере
Пример: как сохранить таблицы table1
, table2
, table3
, из базы DATABASE
в файле DATABASE_t1-t2-t3.sql
Пример: указав опцию --no-data
команда сохранит структуру таблиц (без данных) в файле DATABASE_schema.sql
Пример: опция --add-drop-table
добавит команду DROP TABLE
(удаление таблицы) перед созданием таблиц
Пример: опция --databases
добавит команду CREATE DATABASE
перед созданием базы данных. Это позволяет не создавать и не задавать базу данных при восстановлении
Пример: как сделать бэкап базы DATABASE
удаленно с сервера с IP-адресом 192.168.0.1
Пример: опция --max_allowed_packet=8M
принудительно изменит размер пакета считываемых данных в оперативную память размером в 8 мегабайт
Пример: опция --quick
заставляет команду записывать данные непосредственно на диск
Пример: принудительно указываем кодировку cp1251
Пример: последовательность получения архива базы с помощью gzip
Для последующего восстановления необходимо будет предварительно извлечь из архива.
Пример: как загрузить архив бекапа в базу
или так: