Восстановление базы данных MySQL

Я создал файл с именем ab.sql, используя утилиту mysqldump базы данных с именем library. Работало нормально. Теперь я пытаюсь восстановить его с помощью mysqlimport. Моя база данных уже существует. Но я хочу переопределить это. Я использую команду

mysqlimport -uroot -p**** library D:/ab.sql

в командной строке, но выдает ошибку, которая гласит:

mysqlimport: ошибка: 1146, таблица "library.ab" не существует, при использовании таблицы: ab

отчаянно нужна помощь

2 ответа

Решение

mysqlimport читает строки из текстового файла в базу данных. mysqldump выводит файл, полный операторов SQL, а не простых строк. Вы можете запустить эти операторы SQL, используя:

mysql -u root < D:/ab.sql

В зависимости от ваших параметров mysqldump, это может удалить существующие данные в вашей базе данных. Если вы не уверены, я бы выбрал "drop" и "delete", чтобы убедиться, что все выглядит нормально.

Марк Б прокомментировал: " Ваша ошибка не распознана", либо она не установлена, либо не находится на вашем пути.

Как "Распознать" mysql

Если у вас установлен MySQL, скажем, XAMPP 1.7.3 в Windows 7, установленный в C:\xampp, вам нужно будет открыть командную строку Windows (cmd.exe) и измените свой путь так, чтобы MySQL был включен:

cd C:\xampp\mysql\bin

Затем вы добавили бы команду из ответа Фруди или какой-нибудь вариант, например:

C:\xampp\mysql\bin>mysql -u {DB_USER} -p {DB_NAME} < path/to/file/ab.sql

Если вы переместите файл базы данных (то есть тот, который вы изначально экспортировали с помощью mysqldump) в C:\xampp\mysql\bin перед запуском вышеуказанной команды вы можете оставить путь к файлу базы данных, оставив только:

C:\xampp\mysql\bin>mysql -u {DB_USER} -p {DB_NAME} < ab.sql

Затем вас попросят ввести пароль пользователя базы данных. Затем команда должна выполнить. Вы должны увидеть что-то вроде этого, когда закончите:

импорт windows cmd mysql

Надеюсь, что это помогает и является точным, с небольшой помощью от Stackru, вот как это работает для меня. Удачи!

Другие вопросы по тегам