MySQLdump常用命令总结

本文介绍MySQL备份与还原的常用命令及实例,包括全库备份、单库备份、多库备份等场景,并提供压缩备份及不同方式的还原操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

MySQLdump常用命令总结

MySQLdump常用命令

mysqldump -u root -p --databases db1 db2 > xxx.sql

还原:系统命令行: MySQL -uroot  -proot --single-transaction < all.sql

常见选项:

--all-databases, -A: 备份所有数据库
--databases, -B: 用于备份多个数据库,如果没有该选项,mysqldump把第一个名字参数作为数据库名,后面的作为表名。使用该选项,mysqldump把每个名字都当作为数据库名。
--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文件

--add-drop-database:这个参数需要和--all-database--databases一起使用,导出文件默认不会有create database

--master-data:通过该参数产生的备份转存文件主要用来建立一个replication,value=1时记录CHANGE MASTER语句,当value=2CHANGE MASTER写出SQL注释。

--events:备份事件调度器。

--routines:备份存储过程和函数。

--triggers:备份触发器。

--ignore-table=db_name.tbl_name:忽略要被备份的表,如果忽略多个则需要使用多次此选项,此选项还可以忽略VIEW

--delete-master-logsmaster备份后删除日志这个参数将自动激活--master-data
--flush-logs,-F开始导出之前刷新日志。

 

备份案例
1.备份全部数据库的数据和结构

mysqldump -uroot  -proot --single-transaction -A > all.sql

2.备份全部数据库的结构(加 -d 参数)

mysqldump -uroot  -proot --single-transaction -A -d> all_struct.sql

3.备份全部数据库的数据(-t 参数)

mysqldump -uroot  -proot --single-transaction -A -t> all_data.sql

4.备份单个数据库的数据和结构(,数据库名mydb)

mysqldump -uroot  -proot --single-transaction mydb> mydb.sql

5.备份单个数据库的结构

mysqldump -uroot  -proot --single-transaction mydb -d> mydb.sql

6.备份单个数据库的数据

mysqldump -uroot  -proot --single-transaction mydb -t> mydb.sql

7.备份多个表的数据和结构(数据,结构的单独备份方法与上同)

mysqldump -uroot  -proot --single-transaction mydb t1 t2> multables.sql

8.一次备份多个数据库

mysqldump -uroot  -proot --single-transaction --databases db1 db2> muldbs.sql

9.备份单个数据库不要create database语句

mysqldump --single-transaction --add-drop-database --database test>test_backup.sql

 

10.备份单个数据库生成CHANGE MASTER写出SQL注释

mysqldump --single-transaction --add-drop-database --master-data=2 --database test >test_backup.sql

 

11.备份test数据库排除a,a2

mysqldump -uroot -p test --ignore-table=test.a --ignore-table=test.a2 >a.sql

 

12.备份全部数据库并压缩
mysqldump -uroot -proot --single-transaction -A|gzip -9>mul_db.gz     

 

恢复案例

还原部分分(1mysql命令行source方法 和 (2)系统命令行方法

1.还原全部数据库:

(1) mysql命令行:mysql>source  all.sql

(2) 系统命令行: mysql -uroot  -proot  < all.sql

2.还原单个数据库(需指定数据库)

(1) mysql>use mydb

mysql>source  mydb.sql

(2) mysql -uroot  -proot  mydb < mydb.sql

3.还原单个数据库的多个表(需指定数据库)

(1) mysql>use mydb

mysql>source  multables.sql

(2) mysql -uroot  -proot  mydb< multables.sql

4.还原多个数据库,(一个备份文件里有多个数据库的备份,此时不需要指定数据库)

(1) mysql命令行:mysql>source  muldbs.sql

(2) 系统命令行: mysql -uroot  -proot < muldbs.sql

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值