Импорт файла SQL в mysql

у меня есть база данных под названием nitm. Я не создавал там никаких таблиц. Но у меня есть файл SQL, который содержит все необходимые данные для базы данных. Файл nitm.sql который находится в C: drive. Этот файл имеет размер около 103 МБ. Я использую сервер wamp.

я использовал следующий синтаксис в консоли MySQL для импорта файл:

mysql>c:/nitm.sql;

но это не сработало.

17 ответов


из консоли mysql:

mysql> use DATABASE_NAME;

mysql> source path/to/file.sql;


убедитесь, что перед path нет косой черты, если вы ссылаетесь на относительный путь... мне потребовалось время, чтобы понять это! лол


наконец, я решил проблему. Я поставил `nitm.sql 'файл в' bin 'файл папки" mysql " и используется следующий синтаксис.

C:\wamp\bin\mysql\mysql5.0.51b\bin>mysql -u root nitm < nitm.sql

и это сработало.


если вы используете wamp, вы можете попробовать это. Просто введите use your_Database_name первый.

  1. нажмите значок сервера wamp, затем найдите MYSQL > MSQL Console затем запустить его.

  2. если у вас нет пароля, просто нажмите Enter и введите :

    mysql> use database_name;
    mysql> source location_of_your_file;
    

    если у вас есть пароль, вы будете promt, чтобы ввести пароль. Сначала введите пароль, затем введите:

    mysql> use database_name;
    mysql> source location_of_your_file;
    

location_of_your_file должен выглядеть как C:\mydb.sql

так что одобряю is mysql>источник C:\mydb - ... в SQL;

этот вид импорта дампа sql очень полезен для большого файла SQL.

Я скопировал мои файлы mydb.sq в каталоге C: .Это должна быть заглавная C: для запуска

и это все.


в windows, если вышеуказанное предложение дает вам ошибку (файл не найден или неизвестный db), вы можете удвоить косые черты:

в консоли mysql:

mysql> use DATABASE_NAME;

mysql> source C://path//to//file.sql;

Ok Итак, я использую Linux, но я думаю, что это справедливо и для Windows. Вы можете сделать это либо прямо из командной строки

> mysql -u <user name> -p<password> <database name> < sqlfilename.sql

или из приглашения mysql вы можете использовать:

mysql>source sqlfilename.sql

но оба эти подхода имеют свои преимущества в результатах, которые они отображают. При первом подходе скрипт завершает работу, как только обнаруживает ошибку. И лучше всего то, что он сообщает вам точный номер строки в исходном файле, где произошла ошибка. Однако он отображает только ошибки. Если он не обнаружил никаких ошибок, скрипты ничего не отображают. Что может немного нервировать. Потому что чаще всего вы запускаете сценарий с целой кучей команд.

теперь второй подход (из приглашения mysql) имеет то преимущество, что он отображает сообщение для каждой другой команды MySQL в скрипте. Если он сталкивается с ошибками, он отображает сообщение об ошибке mysql, но продолжает через сценарии. Это может быть хорошо, потому что вы можете затем вернитесь и исправьте все ошибки перед повторным запуском сценария. Недостатком является то, что он не отображает номера строк в скрипте, где были обнаружены ошибки. Это может быть немного больно. Но сообщения об ошибках являются описательными, поэтому вы, вероятно, могли бы выяснить, где проблема.

Я, например, предпочитаю подход непосредственно из командной строки.


Если вы используете xampp

C:\xampp\mysql\bin\mysql -uroot -p nitm < nitm.sql

вы почти там использовать

mysql> \. c:/nitm.sql;

вы также можете получить доступ к справке по

mysql> \?

для localhost на XAMPP. Откройте окно cmd и введите

cd C:\xampp\mysql\bin
mysql.exe -u root -p

внимание! Отсутствие semi-двоеточия после-p Введите пароль и введите

use database_name;

, чтобы выбрать нужную вам базу данных.

проверьте, есть ли ваш стол

show tables;

импорт из файла sql

source sqlfile.sql;

Я положил свой файл на C:\xampp\mysql\bin расположение, чтобы не смешивать с местоположениями sql-файла.


Не забудьте использовать

charset utf8

Если ваш файл sql находится в utf-8:)

поэтому вам нужно сделать:

cmd.exe

в mysql -u в корень

в MySQL> кодировку в utf8

mysql> использовать mydbname

mysql> источник C:\myfolder\myfile - ... в SQL

удачи ))


в Linux я перешел в каталог, содержащий .файл sql перед запуском mysql. Системный курсор теперь находится в том же месте, что и файл, и вам не понадобится путь. Используйте исходные данные myData.sql, где моя дата заменяется именем вашего файла.

cd whatever directory

mysql - p

подключение targetDB

source myData.sql

сделал


попробуй:

mysql -u username -p database_name < file.sql

Регистрация Параметры MySQL.

Примечание: лучше использовать полный путь к файлу SQL file.sql.


из командной строки (cmd.exe, а не из MySQL shell) попробуйте что-то вроде:

type c:/nite.sql | mysql -uuser -ppassword dbname

содержит ли ваш дамп функции, которые не поддерживаются в вашей версии MySQL? Вы также можете попытаться удалить начальные (и конечные) MySQL, прокомментированные SET-операторы.

Я не знаю, приходит ли ваш дамп из Linux-версии MySQL (окончания строк)?


Я установил свой WAMP-сервер в D: drive, поэтому вам нужно перейти к следующему пути из командной строки ur - >(и если вы установили ur wamp в C: drive, просто замените d: wtih c: здесь)

D:\>cd wamp
D:\wamp>cd bin
D:\wamp\bin>cd mysql
D:\wamp\bin\mysql>cd mysql5.5.8 (whatever ur verserion will be displayed here use keyboard Tab button)
D:\wamp\bin\mysql\mysql5.5.8>cd bin
D:\wamp\bin\mysql\mysql5.5.8\bin>mysql -u root -p password db_name < "d:\backupfile.sql"

здесь root является пользователем моего phpmyadmin пароль - это пароль для phpmyadmin так если вы не установили пароль для root, просто ничего не введите в этом месте, db_name-это база данных (для которой база данных u R принимает резервное копирование) , backupfile.sql-это файл, из которого вы хотите создать резервную копию базы данных ur, и вы также можете изменить расположение файла резервной копии(d:\backupfile - ... sql) из любого другого места на вашем компьютере


mysql>c:/nitm.sql;

это напишет вывод команды mysql в ' nitm.sql; '(что должен делать";"?) Предполагая, что у вас есть копия исходного файла (до его перезаписи), то:

mysql < c:/nitm.sql

Экспорт Определенных Баз Данных

 djimi:> mysqldump --user=root --host=localhost --port=3306 --password=test -B CCR KIT >ccr_kit_local.sql

это будет экспортировать базы данных CCR и KIT...

импортируйте всю экспортированную БД в конкретный экземпляр Mysql (вы должны быть там, где находится ваш файл дампа)

djimi:> mysql --user=root --host=localhost --port=3306 --password=test < ccr_kit_local.sql

в ОС Windows для меня работают следующие команды.

mysql>Use <DatabaseName>
mysql>SOURCE C:/data/ScriptFile.sql;

нет одинарных кавычек или двойных кавычек вокруг имени файла. Путь будет содержать '/' вместо '\'.