1、 --single-transaction
  InnoDB 表在备份时,通常启用选项 --single-transaction 来保证备份的一致性,实际上它的工作原理是设定本次会话的隔离级别为:REPEATABLE READ,以确保本次会话(dump)时,不会看到其他会话已经提交了的数据。
2、--master-data
  默认启用—lock-all-tables,如果显式指定—single-transaction则弃用—lock-all-tables,此时只在dump开始时短暂获取global read lock;
执行流程
(1)FLUSH  TABLES
(2)FLUSH TABLES WITH READ LOCK
(3)SHOW MASTER STATUS
  同时使用master-data和single-transaction可以对Innodb进行Online backup
  root> mysqldump --all-databases --master-data --single-transaction > all_databases.sql
执行流程
(1)FLUSH   TABLES
(2)FLUSH TABLES WITH READ LOCK
(3)SET SESSION TRANSACTION ISOLATION LEVEL REPEATABLE READ
(4)START TRANSACTION /*!40100 WITH CONSISTENT SNAPSHOT */
(5)SHOW MASTER STATUS
(6)UNLOCK TABLES
  global read lock的持续时间很短,获取当前binlog的位置信息后立即释放;
注意:
  在执行时如果当前有一个事务长时间没有结束,那么FLUSH TABLES WITH READ LOCK将会一直等待,而更加严重的是,阻塞的FLUSH TABLES WITH READ LOCK会进一步阻塞后续的DML,从而造成mysql hang;
2、--single-transaction and --master-data
  由于增加了选项 --master-data,因此还需要提交一个快速的全局读锁。
  single-transaction 选项和 lock-all-tables 选项是二选一的,前者是在导出开始时设置事务隔离状态并使用一致性快照开始事务,而后马上unlock tables,然后执行导出,导出过程不影响其它事务或业务连接,但只支持类似innodb多版本特性的引擎,因为必须保证即使导出期间其它操作(事务点t2)改变了数据,而导出时仍能取出导出开始的事务点t1时的数据。而lock-all-tables则一开始就 FLUSH TABLES WITH READ LOCK; 加全局读锁,直到dump完毕。
3、--quick, -q
  该选项用于转储大的表。它强制mysqldump从服务器一次一行地检索表中的行而不是检索所有行并在输出前将它缓存到内存中。
4、--opt
  该选项是速记;等同于指定 --add-drop-tables--add-locking --create-option --disable-keys--extended-insert --lock-tables --quick --set-charset。它可以给出很快的转储操作并产生一个可以很快装入MySQL服务器的转储文件。该选项默认开启,但可以用--skip-opt禁用。要想只禁用opt启用的选项,使用--skip形式;例如,--skip-add-drop-tables或--skip-quick。
5、--all--database,-A
  转储所有数据库中的所有表。与使用---database选项相同,在命令行中命名所有数据库。
6、--comments[={0|1}]
  如果设置为 0,禁止转储文件中的其它信息,例如程序版本、服务器版本和主机。--skip-comments与---comments=0的结果相同。 默认值为1,即包括额外信息。
7、--compact
  产生少量输出。该选项禁用注释并启用--skip-add-drop-tables、--no-set-names、--skip-disable-keys和--skip-add-locking选项。
8、--flush-logs,-F
  开始转储前刷新MySQL服务器日志文件。该选项要求RELOAD权限。请注意如果结合--all--database(或-A)选项使用该选项,根据每个转储的数据库刷新日志。例外情况是当使用--lock-all-tables或--master-data的时候:在这种情况下,日志只刷新一次,在所有 表被锁定后刷新。如果你想要同时转储和刷新日志,应使用--flush-logs连同--lock-all-tables或--master-data。

转载于:https://www.cnblogs.com/ycyoes/p/6224216.html

数据库备份工具mysqldump重要参数详解相关推荐

  1. shell编程系列23--shell操作数据库实战之mysql命令参数详解

    shell编程系列23--shell操作数据库实战之mysql命令参数详解mysql命令参数详解-u 用户名-p 用户密码-h 服务器ip地址-D 连接的数据库-N 不输出列信息-B 使用tab键代替 ...

  2. MySQL数据库备份工具mysqldump的使用(转)

    说明:MySQL中InnoDB和MyISAM类型数据库,这个工具最新版本好像都已经支持了,以前可能存在于MyISAM的只能只用冷备份方式的说法. 备份指定库: mysqldump -h127.0.0. ...

  3. centos mysql_CentOS MySQL数据库备份工具mysqldump介绍

    mysqldump工具是mysql自带的一个非常方便的一款小工具,存在mysql安装目录的/usr/local/mysql/bin (CentOS)是下. mysqldump 和 mysql一样,都是 ...

  4. linux stress 工具,Linux压力测试工具stress的参数详解

    为了测试根据服务器的负载情况,给大家推荐下stress这个压力测试工具,具体安装方式就不说了,本文主要介绍下stress的命令参数,大家可以在环境上验证测试下. 参数说明: -? 显示帮助信息 -v ...

  5. 达梦数据库DM8之导入导出参数详解

    上一篇基本讲解了逻辑导出导入和基本用法.这篇详细说明导出导入的参数设置. 导出dexp参数 dexp """SYSDBA"""/" ...

  6. linux命令查看iotop,Linux系统IO分析工具之iotop参数详解(查看IO占用)

    简介: iotop – simple top-like I/O monitor iotop是一个用来监视磁盘I/O使用状况的 top 类工具,可监测到哪一个程序使用的磁盘IO的信息(requires ...

  7. php加速配置,php 提速工具eAccelerator 配置参数详解

    eaccelerator.shm_size="32" eAccelerator 可以使用的共享内存的数量 (以兆为单位) . "0" 是指操作系统的默认值. 默 ...

  8. oracle spool 分隔符_sqlplus--spool命令参数详解

    sqlplus--SPOOL参数详解 Spool是Oracle快速导出数据的工具,是sqlplus的指令,不是sql语法里的东西 一.Spool常用的设置 set arraysize 5000;  / ...

  9. 备份数据库的expdp语句_Oracle数据库备份恢复Data Pump Expdp/Impdp参数详解与案例介绍...

    oracle数据库备份恢复Data Pump Expdp/Impdp参数详解与案例介绍 目 录 1 Oracle数据泵的介绍 3 2 Oracle expdp/impdp参数使用介绍 3 2.1 Or ...

  10. MYSQLDUMP参数详解 --all-databases

    MYSQLDUMP参数详解 mysqldump客户端可用来转储数据库或搜集数据库进行备份或将数据转移到另一个SQL服务器(不一定是一个MySQL服务器).转储包含创建表和/或装载表的SQL语句. 如果 ...

最新文章

  1. math.hypot java_Java math
  2. 开源android豆瓣电影阅读器
  3. 2021 ICPC 江西省大学生程序设计竞赛(热身赛)【完结】
  4. Java程序员必备的10个大数据框架
  5. jacascript AJAX 学习
  6. 华为mstp多生成树配置_网络工程师(30):多实例生成树如何计算
  7. Verify_Execute 验证SQL语句执行结果
  8. linux平台生成awr报告,Linux平台生成awr报告
  9. (实用)网页在线QQ客服咨询html代码
  10. NC如何在打印模板中添加打印审批流记录
  11. Python网络爬虫精要
  12. Go 调用 Java 方案和性能优化分享
  13. virtualbox虚拟机窗口大小调整
  14. MapGIS转换为ArcGIS小结
  15. 语音识别芯片的基本原理和工作流程
  16. windows 命令大全
  17. ipad下添加126邮箱账户
  18. 攻防世界--very_easy_sql
  19. NGINX reload过程
  20. Pyramid With Super Resolution for In-The-Wild Facial Expression Recognition

热门文章

  1. java servlet,action,struts,struts2输出流中文编码问题
  2. [转]20个优秀网站助你征服CSS
  3. C# winform程序运行在XP
  4. 教你在Windows轻松修改Hosts文件
  5. .Net Core中对FluentEmail.Smtp进行封装使用
  6. Python 定时任务(apscheduler模块)
  7. MySQL 字段操作命令
  8. 工具组件_从零认知BI: BI组件、架构、工具、优势、缺点
  9. 锁失效_分布式锁的解决方案(二)
  10. matlab smooth函数_基于Matlab的机械臂路径规划