Подтвердить что ты не робот

Как вы используете команду источника MySQL для импорта больших файлов в окна

У меня есть большой (~ 150 МБ) sql файл, который я пытаюсь импортировать. Это слишком велико, чтобы сделать это через PHPMyAdmin, даже разбивая его на многие части, и он слишком велик для импорта через php script, поскольку он истекает через 30 секунд после обработки script. Поэтому я ищу, как напрямую импортировать файл из командной строки MySQL.

Поиск в Интернете показывает, что я хочу либо использовать database_name < file_name.sql, либо source file_name.sql, но я не могу заставить их работать.

Использование < дает общую ошибку синтаксиса MySQL при использовании source дает немного более перспективный failed to open file 'file_name.sql', error: 2, поэтому я склонен думать, что команда источника находится на правильном пути.

Я в Windows и использую xampp в качестве сервера localhost (обратите внимание, что я пытаюсь импортировать этот файл на localhost, чтобы я мог выполнить sql). Я попытался разместить файл в xampp\mysql\bin и xampp\mysql\data\database_name.

Приветствуются любые предложения о том, как импортировать этот .sql файл в MySQL из командной строки MySQL или любым другим способом.

4b9b3361

Ответ 1

С помощью xampp, я думаю, вам нужно использовать полный путь в командной строке, что-то вроде этого, возможно:

C:\xampp\mysql\bin\mysql -u {username} -p {databasename} < file_name.sql

Ответ 2

В Windows это должно работать (обратите внимание на форвард-лайт и что весь путь не цитируется и что пробелы разрешены)

USE yourdb;

SOURCE D:/My Folder with spaces/Folder/filetoimport.sql;

Ответ 3

Не используйте "source", он предназначен для запуска небольшого количества sql queries и отображения вывода, а не для импорта больших баз данных.

Я использую Wamp Developer (не XAMPP), но он должен быть таким же.

То, что вы хотите сделать, это использовать MySQL Client, чтобы сделать работу за вас.

  1. Убедитесь, что MySQL работает.
  2. Создайте базу данных с помощью phpMyAdmin или MySQL shell.
  3. Затем запустите cmd.exe и перейдите в каталог, в котором находится файл sql находится в.
  4. Выполнить: mysql -u root -p database_name_here < dump_file_name_here.sql
  5. Замените в своих database name и dump file name.
  6. Введите ваш MySQL root account password при появлении запроса (если пароль не установлен, удалите переключатель "-p").

Это предполагает, что mysql.exe может быть расположен через путь к среде, и что файл sql находится в каталоге, из которого вы его запускаете. В противном случае используйте полные пути.

Ответ 4

Вариант 1. вы можете сделать это с помощью одного cmd, где D - моя папка установки xampp или wampp, поэтому я использую его, где mysql.exe install и имя базы данных второго параметра, а last - файл sql, поэтому замените его на свой, затем запустите этот

D:\xampp\mysql\bin\mysql.exe -u root -p databse_name < D:\yoursqlfile.sql

Вариант 1 для wampp

D:\wamp64\bin\mysql\mysql5.7.14\bin\mysql.exe -u root -p databse_name< D:\yoursqlfile.sql

измените свою папку и версию MySQL

Вариант 2 Предположим, ваш текущий путь показывает командную строку

C:\Users\shafiq;

затем измените каталог, используя cd.. затем перейдите в каталог mysql, где установлен ваш xampp. Затем cd.. для смены каталога. затем перейдите в папку bin.

C:\xampp\mysql\bin;

C:\xampp\mysql\bin\mysql -u {username} -p {database password}. затем, пожалуйста, введите, когда вы видите ввод пароля в командной строке.

выберите базу данных с помощью

mysql->use test (where database name test) 

затем поместите в исходный sql в папку bin.

тогда последняя команда будет

mysql-> source test.sql (where test.sql is file name which need to import)

затем нажмите ввод

Это полная команда

C:\Users\shafiq;
C:\xampp\mysql\bin
C:\xampp\mysql\bin\mysql -u {username} -p {database password}
 mysql-> use test
 mysql->source test.sql

Ответ 5

C:\xampp\mysql\bin\mysql -u root -p testdatabase < C:\Users\Juan\Desktop\databasebackup.sql

Это помогло мне импортировать 400 МБ файл в мою базу данных.

Ответ 6

В моей настройке Xampp я смог использовать следующее для импорта базы данных в MySQL:

C:\xampp\mysql\bin\mysql -u {username goes here} -p {leave password blank} {database name} < /path/to/file.sql [enter]

Мой личный опыт на моей локальной машине был следующим:
Имя пользователя: Корень
Имя базы данных: testdatabase
Расположение файла SQL: databasebackup.sql находится на моем рабочем столе

C:\xampp\mysql\bin\mysql -u root -p testdatabase < C:\Users\Juan\Desktop\databasebackup.sql 

Это помогло мне импортировать мой 1GB + файл в мою базу данных.

Ответ 7

Имя пользователя с правами пользователя без пароля

mysql -h localhost -u root databasename < dump.sql

Я столкнулся с проблемой на моем локальном хосте, так как у меня нет пароля для пользователя root. Вы можете использовать его без пароля -p, как указано выше. Если он запрашивает пароль, просто нажмите enter.

Ответ 8

используйте команду mysql source, чтобы избежать сбоев перенаправления, особенно в окнах.

mysql [-u <username>] [-p<password>] <databasename> -e "source /path/to/dump.sql"

где e для команды "Выполнение"

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

Однако либо обратная косая черта \, либо слэш/будет работать в Windows.

Ответ 9

Для импорта большого файла SQL используйте командную строку в MySQL.

Сначала перейдите к пути к файлу в командной строке. Затем

Вариант 1:

mysql -u {user_name} -p{password} {database_name}  < your_file.sql

Это предупреждающее сообщение: использование пароля в интерфейсе командной строки может быть небезопасным.

Готово. Ваш файл будет импортирован.

Вариант 2:

mysql -u {user_name} -p {database_name}  < your_file.sql

при этом вы не предоставляете sql пароль, тогда они попросили пароль, просто введите пароль, и ваш файл будет импортирован.

Ответ 10

На окнах: Используйте проводник, чтобы перейти к папке с файлом .sql. Введите cmd в верхней адресной строке. Cmd откроется. Тип:

"C:\path\to\mysql.exe" -u "your_username" -p "your password" < "name_of_your_sql_file.sql"

Подождите немного, и файл sql будет выполнен в вашей базе данных. Подтвердили работу с MariaDB в фев 2018.

Ответ 11

Здравствуйте, у меня была та же проблема, но я перепробовал много разных состояний и пришел к ней: ИСТОЧНИК не работает с; в конце в моем случае:

SOURCE D:\Barname-Narmafzar\computer programming languages\SQL\MySQL\dataAug-12-2019\dataAug-12-2019.sql;

и ошибка была:

ERROR: Unknown command '\B'. '> это также не работало с цитатой для адреса. Но это работает без; в конце:

SOURCE D:\Barname-Narmafzar\computer programming languages\SQL\MySQL\dataAug-12-2019\dataAug-12-2019.sql

Но не забудьте использовать USE database_name; до этого. Я так думаю, потому что SOURCE, USE или HELP предназначены для самого Mysql, и они не являются такими кодами запросов, хотя, когда вы пишете HELP, он говорит:

Msgstr "Обратите внимание, что все текстовые команды должны быть сначала в строке и заканчиваться символом;".

но здесь не работает.

Я должен сказать, что я сделал это в CMD, и я не пробовал это в Mysql Workbench. Это было так

Это результат