一、备份的方式有两种: 一行一行的备份,或者获取整个表的内容放到内存里,然后开始备份;第二种对内存容量有要求, 所以--quick 是一行一行的备份,一行一行直接输出。

语法:

mysqldump [options] db_name [tables]

mysqldump [options] --database DB1 [DB2 DB3...]

mysqldump [options] --all--database--skip-opt Disables --add-drop-table, --add-locks, --create-options, --quick, --extended-insert,

--lock-all-tables,-x :所有数据库中的所有表加锁。在整体转储过程中通过全局读锁定来实现。该选项自动关闭--single-transaction和--lock-tables。

开始转储前锁定所有表。用READ LOCAL锁定表以允许并行插入MyISAM表。对于事务表例如InnoDB和

BDB,--single-transaction是一个更好的选项,因为它不根本需要锁定表。

请注意当转储多个数据库时,--lock-tables分别为每个数据库锁定表。因此,该选项不能保证

转储文件中的表在数据库之间的逻辑一致性。不同数据库表的转储状态可以完全不同。--databases 或-B 或 --all--database:加此选项dunp文件里有  CREATE DATABASE /*!32312 IF NOT EXISTS*/ `performance_schema` /*!40100 DEFAULT CHARACTER SET utf8 */;

--no-create-info,-t

不写重新创建每个转储表的CREATE TABLE语句,转存表的定义。--no-data,-d

不写表的任何行信息。如果你只想转储表的结构这很有用。-q, --quickDon't buffer query, dump directly to stdout.

---comments[={0|1}]

如果设置为 0,禁止转储文件中的其它信息,例如程序版本、服务器版本和主机。--skip—

comments与---comments=0的结果相同。 默认值为1,即包括额外信息。--compact :产生少量输出。该选项禁用注释并启用--skip-add-drop-tables、--no-set-names、--skip-disable-keys和--skip-add-locking选项。

--compatible=name、

产生与其它数据库系统或旧的MySQL服务器更兼容的输出。值可以为ansi、mysql323、mysql40、

postgresql、oracle、mssql、db2、maxdb、no_key_options、no_tables_options或者

no_field_options。要使用几个值,用逗号将它们隔开。这些值与设置服务器SQL模式的相应选项

有相同的含义。

该选项不能保证同其它服务器之间的兼容性。它只启用那些目前能够使转储输出更兼容的SQL模式

值。例如,--compatible=oracle 不映射Oracle类型或使用Oracle注释语法的数据类型。--complete-insert,-c : 使用包括列名的完整的INSERT语句。

--single-transaction:该选项从服务器转储数据之前发出一个BEGIN SQL语句。它只适用于事务表,例如InnoDB和BDB,因为然后它将在发出BEGIN而没有阻塞任何应用程序时转储一致的数据库状态。当使用该选项时,应记住只有InnoDB表能以一致的状态被转储。例如,使用该选项时任何转储的MyISAM或HEAP表仍然可以更改状态。

--single-transaction选项和--lock-tables选项是互斥的,因为LOCK TABLES会使任何挂起的事务

隐含提交。--tab=path,-T path

产生tab分割的数据文件。对于每个转储的表,mysqldump创建一个包含创建表的CREATE TABLE语句

的tbl_name.sql文件,和一个包含其数据的tbl_name.txt文件。选项值为写入文件的目录。

默认情况,.txt数据文件的格式是在列值和每行后面的新行之间使用tab字符。可以使用--fields-

xxx和--行--xxx选项明显指定格式,此时和load data相似。

注释:该选项只适用于mysqldump与mysqld服务器在同一台机器上运行时。你必须具有FILE权

限,并且服务器必须有在你指定的目录中有写文件的许可。--fields-terminated-by=...,--fields-enclosed-by=...,--fields-optionally-enclosed-by=...,--fields-escaped-by=...,--行-terminated-by=...

例子:mysqldump  --skip-opt  --fields-terminated-by=','-T /tmp hhl --tables

stu  member

cat stu.txt

1,a

2,b

--flush-logs,-F

开始转储前刷新MySQL服务器日志文件。该选项要求RELOAD权限。请注意如果结合--all--

database(或-A)选项使用该选项,转储一个库后刷新一次binlog日志。例外情况是当使用--

lock-all-tables或--master-data的时候:在这种情况下,日志只刷新一次,在所有表被锁定

后刷新。如果你想要同时转储和刷新日志,应使用--flush-logs连同--lock-all-tables或--

master-data。--lock-all-tables,-x

所有数据库中的所有表加锁。在整体转储过程中通过全局读锁定来实现。该选项自动关闭--single-

transaction和--lock-tables。--lock-tables,-l

开始转储前锁定所有表。用READ LOCAL锁定表以允许并行插入MyISAM表。对于事务表例如InnoDB和

BDB,--single-transaction是一个更好的选项,因为它不根本需要锁定表。

请注意当转储多个数据库时,--lock-tables分别为每个数据库锁定表。因此,该选项不能保证转

储文件中的表在数据库之间的逻辑一致性。不同数据库表的转储状态可以完全不同。--master-data[=value]

该选项将二进制日志的位置和文件名写入到输出中。该选项要求有RELOAD权限,并且必须启用二进

制日志。如果该选项值等于1,位置和文件名被写入CHANGE MASTER语句形式的转储输出,如果你使用

该SQL转储主服务器以设置从服务器,从服务器从主服务器二进制日志的正确位置开始。如果选项值

等于2,CHANGE MASTER语句被写成SQL注释。如果value被省略,这是默认动作。--master-data选项

启用--lock-all-tables,除非还指定--single-transaction(在这种情况下,只在刚开始转储时短时

间获得全局读锁定。又见--single-transaction。在任何一种情况下,日志相关动作发生在转储时。

该选项自动关闭--lock-tables。--set-charset

将SET NAMES default_character_set加到输出中。该选项默认启用。要想禁用SET NAMES语句,使

用--skip-set-charset。--single-transaction

该选项从服务器转储数据之前发出一个BEGIN SQL语句。它只适用于事务表,例如InnoDB和BDB,因

为然后它将在发出BEGIN而没有阻塞任何应用程序时转储一致的数据库状态。

当使用该选项时,应记住只有InnoDB表能以一致的状态被转储。例如,使用该选项时任何转储的

MyISAM或HEAP表仍然可以更改状态。--single-transaction选项和--lock-tables选项是互斥的,因

为LOCK TABLES会使任何挂起的事务隐含提交。--routines,-R

在转储的数据库中转储存储程序(函数和程序)。使用---routines产生的输出包含CREATE PROCEDURE

和CREATE FUNCTION语句以重新创建子程序。但是,这些语句不包括属性,例如子程序定义者或创建

和修改时间戳。这说明当重载子程序时,对它们进行创建时定义者应设置为重载用户,时间戳等于

重载时间。如果你需要创建的子程序使用原来的定义者和时间戳属性,不使用--routines。相反,

使用一个具有mysql数据库相应权限的MySQL账户直接转储和重载mysql.proc表的内容。

该选项在MySQL 5.1.2中添加进来。在此之前,存储程序不转储。--tables

覆盖---database或-B选项。选项后面的所有参量被看作表名--triggers

为每个转储的表转储触发器。该选项默认启用;用--skip-triggers禁用它。--tz-utc

在转储文件中加入SET TIME_ZONE='+00:00'以便TIMESTAMP列可以在具有不同时区的服务器之间转储

和重载。(不使用该选项,TIMESTAMP列在具有本地时区的源服务器和目的服务器之间转储和载)。-

-tz-utc也可以保护由于夏令时带来的更改。--tz-utc默认启用。要想禁用它,使用--skip-tz-

utc。该选项在MySQL 5.1.2中加入。

mysql en dump_mysqldump 命令总结相关推荐

  1. Mysql常用基础命令操作实战

    目录 一    启动与关闭MySQL    3 1.1    单实例MySQL启动与关闭方法    3 ※1※    常规启动关闭数据库方式(推荐)    3 1.2    多实例MySQL启动与关闭 ...

  2. mysql查询优化explain命令详解

    转载自 mysql查询优化explain命令详解 mysql查询优化的方法有很多种,explain是工作当中用的比较多的一种检查方式.explain翻译即解释,就是看mysql语句的查询解释计划,从解 ...

  3. Linux 启动/重启/停止 MySQL 数据库的命令

    文章目录 一.启动 MySQL 数据库的命令 (一)使用命令 service 启动 (二)使用命令 systemctl 启动 二.停止 MySQL 数据库的命令 (一)使用命令 service 停止 ...

  4. 转:mysql show processlist命令 详解

    转:mysql show processlist命令 详解 processlist 命令的输出结果显示了有哪些线程在运行,可以帮助识别出有问题的查询语句,两种方式使用这个命令. 1.        进 ...

  5. MySQL中show命令用法大全

    MySQL中show命令用法大全 官方文档:https://dev.mysql.com/doc/refman/5.6/en/show.html https://dev.mysql.com/doc/re ...

  6. MySQL数据库相关命令

    MySQL数据库 1.MySQL导出命令 mysqldump -h IP -u 用户名 -p 数据库名 > 导出的文件名 注:mysqldump命令是在cmd窗口初始目录下的命令,不是进入mys ...

  7. 怎么导入mysql示例_MySQL命令行导出导入数据库实例详解

    1,进入MysqL目录下的bin文件夹:cd MysqL中到bin文件夹的目录 如我输入的命令行:cd C:\Program Files\MysqL\MysqL Server 5.5\bin (或者直 ...

  8. mysql 参数sql文件_为MySQL的source命令导入SQL文件配置参数

    为MySQL的source命令导入SQL文件配置参数 执行 mysql -uroot -p 输入密码后进入 MySQL 命令提示符 set charset utf8; source /root/xxx ...

  9. MySQL数据库备份命令

    原文参考:MySQL数据库备份的命令 - 司南 mysqldump -hhostname -uusername -ppassword databasename > backupfile.sql ...

最新文章

  1. npm install遇到ENOENT: no such file or directory, rename错误
  2. 扩增子图表解读6韦恩图:比较组间共有和特有OTU或分类单元
  3. 上帝视角:程序员为什么需要理解 CPU?
  4. 卸载后的mysql和navicat怎么清除干净_清除电脑“牛皮癣 ”,带你回归清爽体验~...
  5. 深度探索C++ 对象模型(1)-三种对象模型的设计
  6. what should you do at the new arrival of the place
  7. 数据库文档生成工具V1.0
  8. css 旋转45_CSS教程——第14期
  9. block里的self、weakSelf、strongSelf
  10. sybase不支持的条件表达式_包教包会!7段代码带你玩转Python条件语句(附代码)...
  11. 智能计米器jk76怎么安装_春节智能锁消费指南:只看价格的后果有多严重?
  12. android 添加新用户,华为手机怎么添加新用户?华为手机添加新用户的方法
  13. Linq简单语句记录
  14. itextpdf html转pdf
  15. mugen linux主程序,Mugen主程序报错汇总
  16. WindowsNT/2000的系统日志文件
  17. Java多线程游戏-雷霆战机
  18. git clone 失败问题解决方案
  19. 不同频率闪烁多个LED灯
  20. 哈工大刘挺:自然语言处理中的可解释性问题!

热门文章

  1. jssdk更新日志_关于jssdk版本的阿里云网站内容、产品介绍、帮助文档、论坛交流和云市场相关问题...
  2. 日常提高PHP运行效率的习惯
  3. vim之添加多行和删除多行
  4. python朴素贝叶斯分类MNIST数据集
  5. cocos2dx中使用iconv转码(win32,iOS,Android)
  6. 设置JDK环境变量(linux版)
  7. 什么是证书透明度(Certificate Transparency)?
  8. __cdecl __fastcall与 __stdcall 调用约定
  9. 2006最新版个人所得税计算器
  10. 让模型实现“终生学习”,佐治亚理工学院提出Data-Free的增量学习