Mysql Database 逻辑备份: mysqldump

导出库
[root@amb01 ~]# mysqldump -uroot -pabcd.1234 -A >fullbackup.sql 

[root@amb01 ~]# mysqldump -uroot -pabcd.1234 -B tpcc1000 >tpcc1000.sql
 
-A, --all-databases:导出全部的数据库。

-B, --databases:导出指定的数据库。

导出表
[root@amb01 ~]# mysqldump -uroot -pabcd.1234 tpcc1000 customer >customer.sql --导出表结构与表数据,单一sql文件

[root@amb01 ~]# mysqldump -uroot -pabcd.1234 -d tpcc1000 customer >customer01.sql --仅导出表结构

[root@amb01 ~]# mysqldump -uroot -pabcd.1234 -t tpcc1000 customer >customer02.sql --仅导出表数据

[root@amb01 ~]#  mysqldump -uroot -pabcd.1234 -T /var/lib/mysql-files \
--fields-terminated-by=',' --fields-optionally-enclosed-by='"' \
--lines-terminated-by='\n' tpcc1000 customer --导出表结构与表数据,表结构sql文件,表数据文本文件

-d, --no-data:不导出表数据,只导出表结构。

-t, --no-create-info:只导出表数据,不导出表结构。

-w, --where=name:只导出表中where条件选择的记录。

-T, --tab=name:为每个表在指定路径创建制表符分割的文本文件。

--hex-blob:使用十六进制格式导出二进制字符串字段。如果有二进制数据就必须使用该选项。

mysqldump参数
-u, --user=name:指定连接mysqld的用户名。

-p, --password[=name]:指定连接mysqld的密码。

-h, --host=name:指定连接mysqld的主机。

-P, --port=#:指定连接mysqld的端口。

-S, --socket=name:指定连接mysqld的socket文件。

--single-transaction:仅针对Innodb表,开始导出之前开启事务,通过Innodb的多版本来获得数据一致性,
导出的过程中,不能执行 alter table, drop table, rename table, truncate table等DDL语句。

-x, --lock-all-tables:提交请求锁定所有数据库中的所有表,以保证数据的一致性。这是一个全局读锁,
并且自动关闭--single-transaction和--lock-tables选项。

-F, --flush-logs:开始导出之前刷新日志。

-R, --routines:导出存储过程以及自定义函数。

-E, --events:导出事件

--triggers:导出触发器。该选项默认启用



猜你喜欢

转载自blog.51cto.com/13598811/2299573