mysql,dump,数据库还原

时间:2011-02-11 19:48:59

标签: mysql database dump

我使用以下命令转储了我的数据库:

mysqldump -uuser -ppassword db_name > file

然后我完全删除了我的数据库:

drop database db_name;

然后我创建了一个新数据库:

create database db_name;

然后我尝试使用以下命令恢复数据库:

mysqldump -uuser -ppassword db_name < file

问题是转储不会创建表并在其中加载数据,因此数据库仍为空,但它确实显示像dump完成的消息“date time”

这可能是什么原因?

3 个答案:

答案 0 :(得分:19)

mysqldump用于转储数据库。您已经创建了一个新的空数据库,然后转储该空数据库。请使用mysql重新加载转储

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

将是基本的命令序列。

答案 1 :(得分:12)

我喜欢执行以下操作来恢复。

mysql -uuser -ppassword
create database db;
use db;
source dump.sql;

答案 2 :(得分:0)

我尝试使用以下命令转储我的数据库:

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

然后登录DB:

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

然后创建一个新数据库:

#create database <DB_name>;

DB_name是用户定义的名称,我们可以有任何名称。

然后使用以下命令恢复数据库:

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