www.baike369.com
百科369 > MySQL教程 > MySQL使用mysql命令还原数据库

MySQL使用mysql命令还原数据库


MySQL使用mysql命令还原数据库

备份的sql文件中包含CREATE、INSERT语句,有时候也会有DROP语句。mysql命令可以直接执行文件中的这些语句,将备份的数据库文件或者数据表文件还原到数据库中。

基本的语法格式如下:

mysql -u user -p [dbname]<backup.sql

其中:

  • user参数是执行backup.sql中语句的用户。
  • -p表示输入用户密码。
  • dbname参数表示数据库名称。该参数是可选参数,可以指定数据库名,也可以不指定。指定数据库名时,表示还原该数据库下的表;不指定数据库名时,表示还原特定的一个数据库。如果backup.sql文件为mysqldump工具创建的包含创建数据库语句的文件,则执行时不需要指定数据库名。

实例1

使用mysql命令将F:\backup\db_xuesheng_20141028.sql文件中的备份还原到数据库中。SQL代码如下:

mysql -u root -p db_xuesheng<F:\backup\db_xuesheng_20141028.sql

db_xuesheng为要还原到的数据库名称。

执行该语句前,必须先在MySQL服务器中创建db_xuesheng数据库。如果数据库不存在,恢复过程将会出现错误。

执行结果如下:

使用mysql命令还原数据库的操作效果

命令执行成功以后,db_xuesheng_20141028.sql文件中的语句就会在指定的数据库中恢复以前的表。


实例2

使用root用户还原所有的数据库。SQL代码如下:

mysql -u root -p<F:\backup\alldb.sql

执行结果如下:

使用root用户还原所有的数据库的操作效果

执行成功以后,MySQL数据库中就已经还原了alldb.sql文件中的所有数据库。

提示:

如果使用--all-databases参数备份了所有的数据库,那么还原时不需要指定数据库。因为,其对应的sql文件包含有CREATE DATABASE语句,可以通过该语句创建数据库。创建数据库以后,可以执行sql文件中的USE语句选择数据库,然后在数据库中创建表并且插入记录。


实例3

如果已经登录MySQL服务器,还可以使用source命令导入sql文件。source语句的语法格式如下:

source filename

filename表示已经备份好的sql文件名。

使用root用户登录到MySQL服务器,然后使用source导入本地的备份文件tb_chengji.sql。SQL代码如下:

source F:\backup\tb_chengji.sql

执行结果如下:

登录MySQL服务器后使用source命令导入sql文件的操作效果

命令执行后,会列出备份文件tb_chengji.sql中每一条语句的执行结果。source命令执行成功后,tb_chengji.sql中的语句会全部导入到现有数据库中。

提示:

执行source命令之前,必须使用use语句选择要还原的数据库。

Copyright© 2011-2016 www.baike369.com All Rights Reserved