1,105,447 Community Members

Trouble restoring database backed with mysqldump

Member Avatar
savedlema
Junior Poster
104 posts since Sep 2012
Reputation Points: 8 [?]
Q&As Helped to Solve: 1 [?]
Skill Endorsements: 0 [?]
 
0
 

Hi friends!
I have some trouble restoring a mysql database that I backed up with mysqldump. I have been trying to do this from a command prompt (Windows)

This is my code:

mysql -u root -pPassword databasename < C:\Backup\databaseNameToBeRestored.sql

With this, I get the message that "mysql" is not recognized as internal or external or external command, operable program or batch file.

I added "" to get "mysql -u root -pPassword databasename < C:\Backup\databaseNameToBeRestored.sql" But to this I get error message "The filename, directory name, or volume lable syntax is incorrect"

This man here said the code I tried worked for him.

Any help please? (and if you don't mind, I would appreciate if somebody could told me why changing > to < in the mysqldump command does not work 100% in restoring the backed database)

Member Avatar
dorco
Light Poster
46 posts since Feb 2013
Reputation Points: 12 [?]
Q&As Helped to Solve: 16 [?]
Skill Endorsements: 0 [?]
 
1
 

go to the folder where mysql.exe exists and execute the command there

Member Avatar
pritaeas
mod_pritaeas
11,315 posts since Jul 2006
Reputation Points: 1,420 [?]
Q&As Helped to Solve: 1,835 [?]
Skill Endorsements: 156 [?]
Moderator
Featured
Sponsor
 
0
 

As to your second question: mysqldump only exports information (hence the "dump" postfix). It was never designed to receive input, that's why it doesn't work.

Member Avatar
IIM
Master Poster
742 posts since Jun 2011
Reputation Points: 163 [?]
Q&As Helped to Solve: 169 [?]
Skill Endorsements: 24 [?]
 
1
 

take a look at http://adityangoyal.blogspot.in/2013/04/importexport-mysql-database.html .I have explained how to import and export mysql database.
* As what i can see,the error you are getting is because you have to set the path of mysql.exe in your system environment variable.
Go to System properties->Environment variable.In system varaiable->path.At end add semicolon and add the path of mysql.exe(location of mysql.exe eg:C:\Program Files\MySQL\MySQL Server 5.5\bin)
* Using command prompt go till the location of mysql.exe and then run above command

Member Avatar
imBaCodes
Junior Poster
179 posts since Apr 2013
Reputation Points: 2 [?]
Q&As Helped to Solve: 20 [?]
Skill Endorsements: 9 [?]
 
2
 

Try this..

mysqldump -u username -p databasename < C:\Backup\databaseNameToBeRestored.sql

We always change from < to > because
when we use "<" we are importing a file to our database.
And on the other hand when we use ">" we are exporting.
that's it!!

Happy coding.

Member Avatar
savedlema
Junior Poster
104 posts since Sep 2012
Reputation Points: 8 [?]
Q&As Helped to Solve: 1 [?]
Skill Endorsements: 0 [?]
 
0
 

imBaCodes, there I had tried that, and there something that I could not figure out:
-I backed up a database successfully with mysqldump.
-In my live database, I deleted one user from a table that contained users information.
-I restored the database (with the same codes as you gave me) from the backup I created in step one. The command prompt shows that everything went well.
-Now I accessed the database to see if the record/user I deleted is back (since I restored the backup that contained him), the user WAS NOT THERE.
-I tried the same thing over and over, no success. I wonder what this is.
Can you explain that imBaCodes?

Member Avatar
savedlema
Junior Poster
104 posts since Sep 2012
Reputation Points: 8 [?]
Q&As Helped to Solve: 1 [?]
Skill Endorsements: 0 [?]
 
0
 

Thanks all,
I had tried to include the full path to my code. For my case, the code would be,

"C:\Program Files\MySQL\MySQL Server 5.5\mysql -u root -pMyPassword databasename < C:\Backup\databasename.sql"

But then it would say, "The filename, directory name, or volume lable syntax is incorrect"

I also tried:

"C:\Program Files\MySQL\MySQL Server 5.5\mysql" -u root -pMyPassword databasename < C:\Backup\databasename.sql

and

"C:\Program Files\MySQL\MySQL Server 5.5\mysql" --u root --pMyPassword databasename < C:\Backup\databasename.sql

With no success.

I would appreciate further help please.

Member Avatar
IIM
Master Poster
742 posts since Jun 2011
Reputation Points: 163 [?]
Q&As Helped to Solve: 169 [?]
Skill Endorsements: 24 [?]
 
1
 

instead of backward slash(), try forward slash(/) in your location.

mysql --u root --pMyPassword databasename < C:/Backup/databasename.sql

Note:-I hope that you are also following the steps i told in my first comment,otherwise you will get mysql is not recognised as internal command error

Member Avatar
savedlema
Junior Poster
104 posts since Sep 2012
Reputation Points: 8 [?]
Q&As Helped to Solve: 1 [?]
Skill Endorsements: 0 [?]
 
0
 

Now I don't know why I get "ERROR :2003(HY000):Can't connect to mysql...on localhost?

I use a different port for mysql so I include it in the code:

mysql --u root --pMyPassword --h localhost --port 3301 databasename < C:/Backup/databasename.sql

More help please?

Member Avatar
IIM
Master Poster
742 posts since Jun 2011
Reputation Points: 163 [?]
Q&As Helped to Solve: 169 [?]
Skill Endorsements: 24 [?]
 
1
 

Check if your mysql service is running.Check if it's status is Started.Try by restarting the mysql service.
If it is still not working also check if firewall is not blocking the service to connect.

Member Avatar
pritaeas
mod_pritaeas
11,315 posts since Jul 2006
Reputation Points: 1,420 [?]
Q&As Helped to Solve: 1,835 [?]
Skill Endorsements: 156 [?]
Moderator
Featured
Sponsor
 
1
 

Do note that that there is a difference when specifying option with - versus --

mysql -u root -h localhost
mysql --user=root --host=localhost

Use one or the other. Read more.

Member Avatar
savedlema
Junior Poster
104 posts since Sep 2012
Reputation Points: 8 [?]
Q&As Helped to Solve: 1 [?]
Skill Endorsements: 0 [?]
 
0
 

Friends, I have kept on tying and trying. What's wrong with this one?

"C:\Program Files\MySQL\MySQL Server 5.5\mysql --user=root --password=password --host= localhost --port= 3306 --database=dbname < C:/Backup/dbname.sql"

I get "The filename, directory name, or volume lable syntax is incorrect" error messsage. I have googled for this error to no avail as to do with mysql.

  • My mysql server is up and running with no problem. (Even the mysqldump command works)
  • Problem is the same even if I open the command prompt from C:\Program Files\MySQL\MySQL Server 5.5\mysql
    *I have tried to remove "", did not help.

    For this one, I will really appreciate any help.

Member Avatar
pixelsoul
Posting Shark
920 posts since Feb 2011
Reputation Points: 174 [?]
Q&As Helped to Solve: 147 [?]
Skill Endorsements: 25 [?]
 
2
 

Use back slashes on windows, not forward slashes

C:\Backup\dbname.sql

Member Avatar
savedlema
Junior Poster
104 posts since Sep 2012
Reputation Points: 8 [?]
Q&As Helped to Solve: 1 [?]
Skill Endorsements: 0 [?]
 
0
 

Pixesoul, Sorry, I didn't say; I had tried:

"C:\Program Files\MySQL\MySQL Server 5.5\mysql --user=root --password=password --host= localhost --port= 3306 --database=dbname < C:\Backup\dbname.sql"

That, to no avail. I still get the error about filename,directory name..syntax error. Can you figure out where is the problem? I have tried this on XP and Win 7.

Member Avatar
pixelsoul
Posting Shark
920 posts since Feb 2011
Reputation Points: 174 [?]
Q&As Helped to Solve: 147 [?]
Skill Endorsements: 25 [?]
 
2
 

Hmm, you should be running it from bin. Try this with two different steps:

1) cd C:\Program Files\MySQL\MySQL Server 5.5\bin

2) mysql –uroot -ppassword -hlocalhost dbname < C:\Backup\dbname.sql

Member Avatar
paulkd
Posting Whiz
372 posts since Aug 2007
Reputation Points: 46 [?]
Q&As Helped to Solve: 67 [?]
Skill Endorsements: 12 [?]
 
1
 

Have you thought about using a GUI - e.g toad or workbench ?

http://www.toadworld.com/Default.aspx

http://www.mysql.com/products/workbench/

and just run the script from within.

Member Avatar
savedlema
Junior Poster
104 posts since Sep 2012
Reputation Points: 8 [?]
Q&As Helped to Solve: 1 [?]
Skill Endorsements: 0 [?]
 
0
 

Thanks pixel, and ops, sorry, I had forgotten the /bin. I tried your two steps and, upon running the second one, it brought me lots of information about mysql version, Oracle...then it brough that list which is always brought to you when you miss a command. It brought me a lot of stuff, which I think, means that we missed something there in the second step. Can you figure it out please?

*Let me also declare that I'm looking for a script/code to take with me to an application I'm developing with VB.NET.

Member Avatar
pixelsoul
Posting Shark
920 posts since Feb 2011
Reputation Points: 174 [?]
Q&As Helped to Solve: 147 [?]
Skill Endorsements: 25 [?]
 
1
 

Can you attach the output that you get back from the second command? If it is too much to post in the thread you can attach a text file.

Member Avatar
IIM
Master Poster
742 posts since Jun 2011
Reputation Points: 163 [?]
Q&As Helped to Solve: 169 [?]
Skill Endorsements: 24 [?]
 
1
 

@savedlema:- you are not following all the instructions we are giving.In my first post i have given the path but you are not following it.
If you go to my blog,you will get everything you required.
In second just change backslash to forward

2) mysql –uroot -ppassword -hlocalhost dbname < C:/Backup/dbname.sql

cd C:\Program Files\MySQL\MySQL Server 5.5\bin

This step might be ignored if you have added this path to system variables.

Please read all the solution properly.

Member Avatar
imBaCodes
Junior Poster
179 posts since Apr 2013
Reputation Points: 2 [?]
Q&As Helped to Solve: 20 [?]
Skill Endorsements: 9 [?]
 
2
 

savedlema .. it did not work beacause we just imported .. It did not update the database you have ..
if you are using phpmyadin just upload your backup .. in that case you will not have a prblem in your data..

You
This question has already been solved: Start a new discussion instead
Post:
Start New Discussion
Tags Related to this Article