mysql备份与还原数据库命令详解

2018-12-26 00:50:58 8854

备份数据库

mysqldump -u root -p —databases db1 db2 > dbbak.sql
备份全部数据库的数据和结构
mysqldump -uroot -p123456 -A >F:\all.sql
备份全部数据库的结构(加 -d 参数)
mysqldump -uroot -p123456 -A-d>F:\all_struct.sql
备份全部数据库的数据(加 -t 参数)
mysqldump -uroot -p123456 -A-t>F:\all_data.sql
备份单个数据库的数据和结构(数据库名mydb)
mysqldump -uroot-p123456 mydb>F:\mydb.sql
备份单个数据库的结构
mysqldump -uroot -p123456 mydb-d>F:\mydb.sql
备份单个数据库的数据
mysqldump -uroot -p123456 mydb-t>F:\mydb.sql
备份多个表的数据和结构(数据,结构的单独备份方法与上同)
mysqldump -uroot -p123456 mydb t1 t2>f:\multables.sql
一次备份多个数据库
mysqldump -uroot -p123456 —databases db1 db2>f:\muldbs.sql

数据库还原

mysql -uroot -p123456 < f:\all.sql
还原全部数据库

mysql命令行:

mysql>source f:\all.sql

系统命令行

mysql -uroot -p123456 <f:\all.sql
还原单个数据库(需指定数据库)

mysql命令行:

mysql>use mydbmysql>source f:\mydb.sql

系统命令行:

mysql -uroot -p123456 mydb <f:\mydb.sql
还原单个数据库的多个表(需指定数据库)

mysql命令行:

mysql>use mydbmysql>source f:\multables.sql

系统命令行:

mysql -uroot -p123456 mydb<f:\multables.sql<
还原多个数据库(一个备份文件里有多个数据库的备份,此时不需要指定数据库)

mysql命令行:

mysql>source f:\muldbs.sql

系统命令行:

mysql -uroot -p123456<f:\muldbs.sql

常见选项

—all-databases, -A: 备份所有数据库

—databases, -B: 用于备份多个数据库,如果没有该选项,mysqldump把第一个名字参数作为数据库名,后面的作为表名。使用该选项,mysqldum把每个名字都当作为数据库名。

—force, -f:即使发现sql错误,仍然继续备份

—host=host_name, -h host_name:备份主机名,默认为localhost

—no-data, -d:只导出表结构

—password[=password], -p[password]:密码

—port=port_num, -P port_num:制定TCP/IP连接时的端口号

—quick, -q:快速导出

—tables:覆盖 —databases or -B选项,后面所跟参数被视作表名

—user=user_name, -u user_name:用户名

—xml, -X:导出为xml文件


提交成功!非常感谢您的反馈,我们会继续努力做到更好!

这条文档是否有帮助解决问题?

非常抱歉未能帮助到您。为了给您提供更好的服务,我们很需要您进一步的反馈信息:

在文档使用中是否遇到以下问题: