mysql, dump, database restore

2019-03-14 13:55发布

I have dumped my database with the following command:

mysqldump -uuser -ppassword db_name > file

then I completely removed my database:

drop database db_name;

then I created a new database:

create database db_name;

and then I tried to restore the db with the following command:

mysqldump -uuser -ppassword db_name < file

The problem is that dump does not create tables and loads data in them and so the database remains empty however it does show a message like dump completed "date time"

What could be the reason for this?

3条回答
Emotional °昔
2楼-- · 2019-03-14 14:28

mysqldump is for dumping the database. You've created a new empty database, and then dumped that empty database. Use mysql instead to reload your dump

mysqldump db > dump.sql
mysql drop/create
mysql db < dump.sql

would be the basic command sequence.

查看更多
欢心
3楼-- · 2019-03-14 14:34

I like to do the following to restore.

mysql -uuser -ppassword
create database db;
use db;
source dump.sql;
查看更多
看我几分像从前
4楼-- · 2019-03-14 14:41

I tried dump of my database with the following commands:

#mysqldump -u <username> -p <password> DB_name > <filename>.sql

Then login into the DB:

   #mysql -u <username> -p <password>
   >show databases;
   >drop database <DB_name>;

Then create a new database:

#create database <DB_name>;

DB_name is userdefined name we can have any name.

and then restore the DB with the following command:

#mysql -u <username> -p <password> DB_name < <filename>.sql
查看更多
登录 后发表回答