mysqldump 参数--single-transaction

时间:2014-07-16 19:06:58   收藏:0   阅读:526

 

其实很简单,single-transaction可以让mysqldump 的时候不锁表。但是他有3个前提

  1. innodb的引擎
  2. 不能在执行的同时,有其他alter table ,drop table,rename table,truncate table的操作。
  3. 隔离级别 必须是REPEATABLE READ ,很多公司都会修改这个隔离级别的,比如阿里云的rds ,默认隔离级别是READ-COMMITTED 

 下面附上 mysqldump --help的 内容,和mysql 官网上的内容:

--single-transaction
Creates a consistent snapshot by dumping all tables in a
single transaction. Works ONLY for tables stored in
storage engines which support multiversioning (currently
only InnoDB does); the dump is NOT guaranteed to be
consistent for other storage engines. While a
--single-transaction dump is in process, to ensure a
valid dump file (correct table contents and binary log
position), no other connection should use the following
statements: ALTER TABLE, DROP TABLE, RENAME TABLE,
TRUNCATE TABLE, as consistent snapshot is not isolated
from them. Option automatically turns off --lock-tables.

 

mysqldump 参数--single-transaction,布布扣,bubuko.com

评论(0
© 2014 mamicode.com 版权所有 京ICP备13008772号-2  联系我们:gaon5@hotmail.com
迷上了代码!