Импорт базы данных из файла дампа или бэкапа чаще всего осуществляется инструментами администрирования mysql или резервного копирования данных. Но что делать, если содержимое базы данных повреждено и его нужно восстановить из копии, а под рукой только сервер и файл с данными для импорта?
Импортируем данные mysql через командную строку
Вариант первый
Рассмотрим простейший случай, когда сервер mysql расположен на этой же системе:
mysql -u username -p database < /home/mydump.sql
Теперь подробнее:
- Команда mysql — вызов утилиты управления сервером mysql;
- Параметр -u username — указываем имя пользователя mysql, имеющего полномочия на добавление/обновление данных;
- Параметр -p — указывает необходимость запроса пароля;
- Параметр database — задает имя базы данных, в которую нужно импортировать данные;
- И последняя часть: < /home/mydump.sql — передача данных для импорта.
После нажатия Enter, будет запрошен пароль пользователя username и, в случае его корректного ввода, выполнен импорт.
Вариант второй, немного сложнее
Как быть, если целевой сервер mysql находится за семью морями или просто в соседнем здании, но идти до него не хочется?
mysql -h remote.mysql.host -u username -p database < /home/mydump.sql
Все отличие от первого варианта только в явном указании удаленного сервера mysql для подключения: -h remote.mysql.host. указывать можно как имя хоста, так и его ip-адрес.
Разумеется, у пользователя username должны быть полномочия для удаленного подключения к серверу mysql.