28

I have a MySQL file, db.sql. I have tried to import it using:

mysql -uroot -p[password] db < db.sql

All I get is a listing of mysql commands, or I get a syntax error. The weird thing is I used this file last week and, as far as I know, I'm doing it the same way.

I create the database, then in command line enter the above but it's not working. I've tried being inside mysql and just at command line and nothing seems to be working.

Is there something I should be doing differently in windows or MySQL5? I don't know how the heck I got it to work the first time...

TIA

starbeamrainbowlabs
  • 5,692
  • 8
  • 42
  • 73
user80151
  • 605
  • 2
  • 7
  • 13

7 Answers7

62

Try this instead:

mysql -u root -p
(prompts for password)
use db;
source db.sql
wallyk
  • 56,922
  • 16
  • 83
  • 148
5

I found out it is different to run this command from Windows Command Line (cmd.exe) and Windows PowerShell.

Using CMD.exe the command works okay, but in PowerShell I get this error:

mysql -uroot exampledb < exampledb.sql

The '<' operator is reserved for future use.

abc
  • 123
  • 1
  • 6
  • 3
    You can't use the < on Windows PowerShell ([see here](http://stackoverflow.com/a/2148816/1256062)) – tvdias Aug 08 '12 at 15:30
1

If you are already logged in the try this it will be very useful, but depend upon the MySQL version, it works on MySQL 5.0

For log in if you are not already logged in.

mysql>[your password]

Other wise, use the database to which you want to import the SQLDump file by command.

mysql>use [your database name]

And then give source the database Dump file path as blow command(If not works the copy Dump database file to the bin folder where the MySQL installed for eg. "C:/programfiles/mysql/mqlserver5.0/bin")

mysql> source [dataBasePath+name.sql or dataBaseName.sql]

Md. Husain
  • 11
  • 1
0

Not sure if your example was a typo or not, but for starters you need to have a space in between your flags and their values, roughly like this:

mysql -u root -p [password] db < db.sql
jaywon
  • 8,164
  • 10
  • 39
  • 47
0

This perfectly works

mysql>[your password]

Other wise, use the database to which you want to import the SQLDump file by command.

mysql>use [your database name]

And then give source the database Dump file path as blow command(If not works the copy Dump database file to the bin folder where the MySQL installed for eg. "C:/programfiles/mysql/mqlserver5.0/bin")

mysql> source [dataBasePath+name.sql or dataBaseName.sql]EG: source C:.....sql

I am using mysql server 5.5

rsus
  • 1
0

I've been using PHP script called "BigDump": http://www.ozerov.de/bigdump.php

Jani Kajala
  • 193
  • 1
  • 5
0

In Windows PowerShell, you can pipe in the contents like so:

Get-Content db.sql | mysql -u root -p [password]
naXa stands with Ukraine
  • 35,493
  • 19
  • 190
  • 259