MySQL中mysqldump导出数据的使用

Posted 梦徒

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MySQL中mysqldump导出数据的使用相关的知识,希望对你有一定的参考价值。

mysqldump常用参数说明:

帮助使用:mysqldump --help

-A, --all-databases 导出全部数据库 mysqldump -uroot -p –A > /tmp/filename.sql

-Y, --all-tablespaces 导出全部表空间 

-y, --no-tablespaces   不导出任何表空间信息.

--add-drop-database 每个数据库创建之前添加drop数据库语句。

--add-drop-table  每个数据表创建之前添加drop数据表语句,默认为打开状态,使用–skip-add-drop-table取消选项。

--add-locks 在每个表导出之前增加LOCK TABLES并且之后UNLOCK TABLE.默认为打开状态,使用–skip-add-locks取消选项.

-i, --comments 附加注释信息,默认为打开,可以用–skip-comments取消.

--compact 导出更少的输出信息(用于调试)。去掉注释和头尾等结构.

-C, --compress 在客户端和服务器之间启用压缩传递所有信息

-B, --databases 导出多个数据库,参数后面所有名字参量都被看作数据库名.例如:mysqldump -uroot -p -B test mysql

--default-character-set 设置默认字符集,默认值为utf8。例如:mysqldump -uroot -p –A –default-character-set=latin1

-E, --events 导出事件.

-F, --flush-logs 开始导出之前刷新日志请注意:假如一次导出多个数据库(使用选项–databases或者–all-databases),将会逐个数据库刷新日志。除使用–lock-all-tables或者–master-data
外。在这种情况下,日志将会被刷新一次,相应的所以表同时被锁定。因此,如果打算同时导出和刷新日志应该使用–lock-all-tables 或者–master-data 和–flush-logs。
mysqldump -uroot -p –all-databases –flush-logs -f, --force 在导出过程中忽略出现的SQL错误. --ignore-table=name 不导出指定表。指定忽略多个表时,需要重复多次,每次一个表。每个表必须同时指定数据库和表名。 -d, --no-data 不导出任何数据,只导出数据库表结构。 -p, --password[=name] 连接数据库密码 -P, --port=# 连接数据库端口号 -u, --user=name 指定连接的用户名。 --debug-info 输出调试信息并退出 -R, --routines 导出存储过程和函数 --triggers 导出触发器

mysqldump常用于数据库的备份与还原,在备份的过程中我们可以根据自己的实际情况添加以上任何参数

1.导出整个数据库(包括数据库中的数据和创建表的语句)

mysqldump -u username -p dbname > filename.sql

2.导出数据库结构(不含数据,只包含创建表的语句)

mysqldump -u username -p -d dbname > filename.sql 

3.导出数据库中的某张数据表(包含表数据和创建表语句)

mysqldump -u username -p dbname tablename > filename.sql

4.导出数据库中的某张数据表的表结构(不含数据)

mysqldump -u username -p -d dbname tablename > filename.sql 

  

  

  

  

 



以上是关于MySQL中mysqldump导出数据的使用的主要内容,如果未能解决你的问题,请参考以下文章

mysql怎么导出数据库sql文件

MySQL中mysqldump导出数据的使用

MYSQL使用mysqldump导出某个表的部分数据

MYSQL使用mysqldump导出某个表的部分数据

MySQL数据库使用mysqldump导出数据详解

MySQL mysqldump数据导出详解