深圳全飞鸿

标题: mysqldump --single-transaction参数的作用 [打印本页]

作者: zhgc    时间: 2019-7-5 10:14
标题: mysqldump --single-transaction参数的作用
--single-transaction参数的作用,设置事务的隔离级别为可重复读,即REPEATABLE READ,
这样能保证在一个事务中所有相同的查询读取到同样的数据,也就大概保证了在dump期间,如果其他innodb引擎的线程修改了表的数据并提交,对该dump线程的数据并无影响,在这期间不会锁表



测试过程:


开启general log的选项

  1. set global general_log=on;
  2. show variables like ‘%general_log%‘;
复制代码


执行备份:



  1. C:\Program Files\MySQL\MySQL Server 5.1\bin\mysqld, Version: 5.1.41-community-log (MySQL Community Server (GPL)). started with:
  2. TCP Port: 3306, Named Pipe: MySQL
  3. Time                 Id Command    Argument
  4. 190705  9:59:23            1 Query        show variables like '%gene%'
  5. 190705  9:59:36            1 Query        select * from mysql.general_log
  6. 190705 10:00:43            4 Connect        root@127.0.0.1 on
  7.                     4 Query        /*!40100 SET @@SQL_MODE='' */
  8.                     4 Query        /*!40103 SET TIME_ZONE='+00:00' */
  9.                     4 Query        SET SESSION TRANSACTION ISOLATION LEVEL REPEATABLE READ
  10.                     4 Query        START TRANSACTION /*!40100 WITH CONSISTENT SNAPSHOT */
  11.                     4 Query        UNLOCK TABLES
  12.                     4 Query        SELECT LOGFILE_GROUP_NAME, FILE_NAME, TOTAL_EXTENTS, INITIAL_SIZE, ENGINE, EXTRA FROM INFORMATION_SCHEMA.FILES WHERE FILE_TYPE = 'UNDO LOG' AND FILE_NAME IS NOT NULL AND LOGFILE_GROUP_NAME IN (SELECT DISTINCT LOGFILE_GROUP_NAME FROM INFORMATION_SCHEMA.FILES WHERE FILE_TYPE = 'DATAFILE' AND TABLESPACE_NAME IN (SELECT DISTINCT TABLESPACE_NAME FROM INFORMATION_SCHEMA.PARTITIONS WHERE TABLE_SCHEMA IN ('syant'))) GROUP BY LOGFILE_GROUP_NAME, FILE_NAME, ENGINE ORDER BY LOGFILE_GROUP_NAME
  13.                     4 Query        SELECT DISTINCT TABLESPACE_NAME, FILE_NAME, LOGFILE_GROUP_NAME, EXTENT_SIZE, INITIAL_SIZE, ENGINE FROM INFORMATION_SCHEMA.FILES WHERE FILE_TYPE = 'DATAFILE' AND TABLESPACE_NAME IN (SELECT DISTINCT TABLESPACE_NAME FROM INFORMATION_SCHEMA.PARTITIONS WHERE TABLE_SCHEMA IN ('syant')) ORDER BY TABLESPACE_NAME, LOGFILE_GROUP_NAME
  14.                     4 Init DB        syant
  15.                     4 Query        show tables
  16.                     4 Query        show table status like 'all\_source'
  17.                     4 Query        SET OPTION SQL_QUOTE_SHOW_CREATE=1
  18.                     4 Query        SET SESSION character_set_results = 'binary'
  19.                     4 Query        show create table `all_source`
  20.                     4 Query        SET SESSION character_set_results = 'utf8'
  21.                     4 Query        show fields from `all_source`
  22.                     4 Query        SELECT /*!40001 SQL_NO_CACHE */ * FROM `all_source`
  23.                     4 Query        SET SESSION character_set_results = 'binary'
  24.                     4 Query        use `syant`
  25.                     4 Query        select @@collation_database
  26.                     4 Query        SHOW TRIGGERS LIKE 'all\_source'
  27.                     4 Query        SET SESSION character_set_results = 'utf8'
  28.                     4 Query        show table status like 'b\_session'
  29.                     4 Query        SET OPTION SQL_QUOTE_SHOW_CREATE=1
  30.                     4 Query        SET SESSION character_set_results = 'binary'
  31.                     4 Query        show create table `b_session`
  32.                     4 Query        SET SESSION character_set_results = 'utf8'
  33.                     4 Query        show fields from `b_session`
  34.                     4 Query        SELECT /*!40001 SQL_NO_CACHE */ * FROM `b_session`
  35.                     4 Query        SET SESSION character_set_results = 'binary'
  36.                     4 Query        use `syant`
  37.                     4 Query        select @@collation_database
  38.                     4 Query        SHOW TRIGGERS LIKE 'b\_session'
  39.                     4 Query        SET SESSION character_set_results = 'utf8'
  40.                     4 Query        show table status like 'z\_binlog'
  41.                     4 Query        SET OPTION SQL_QUOTE_SHOW_CREATE=1
  42.                     4 Query        SET SESSION character_set_results = 'binary'
  43.                     4 Query        show create table `z_binlog`
  44.                     4 Query        SET SESSION character_set_results = 'utf8'
  45.                     4 Query        show fields from `z_binlog`
  46.                     4 Query        SELECT /*!40001 SQL_NO_CACHE */ * FROM `z_binlog`
  47.                     4 Query        SET SESSION character_set_results = 'binary'
  48.                     4 Query        use `syant`
  49.                     4 Query        select @@collation_database
  50.                     4 Query        SHOW TRIGGERS LIKE 'z\_binlog'
  51.                     4 Query        SET SESSION character_set_results = 'utf8'
  52.                     4 Query        show table status like 'z\_binlog\_events'
  53.                     4 Query        SET OPTION SQL_QUOTE_SHOW_CREATE=1
  54.                     4 Query        SET SESSION character_set_results = 'binary'
  55.                     4 Query        show create table `z_binlog_events`
  56.                     4 Query        SET SESSION character_set_results = 'utf8'
  57.                     4 Query        show fields from `z_binlog_events`
  58.                     4 Query        SELECT /*!40001 SQL_NO_CACHE */ * FROM `z_binlog_events`
  59.                     4 Query        SET SESSION character_set_results = 'binary'
  60.                     4 Query        use `syant`
  61.                     4 Query        select @@collation_database
  62.                     4 Query        SHOW TRIGGERS LIKE 'z\_binlog\_events'
  63.                     4 Query        SET SESSION character_set_results = 'utf8'
  64.                     4 Query        show table status like 'z\_binlog\_list'
  65.                     4 Query        SET OPTION SQL_QUOTE_SHOW_CREATE=1
  66.                     4 Query        SET SESSION character_set_results = 'binary'
  67.                     4 Query        show create table `z_binlog_list`
  68.                     4 Query        SET SESSION character_set_results = 'utf8'
  69.                     4 Query        show fields from `z_binlog_list`
  70.                     4 Query        SELECT /*!40001 SQL_NO_CACHE */ * FROM `z_binlog_list`
  71.                     4 Query        SET SESSION character_set_results = 'binary'
  72.                     4 Query        use `syant`
  73.                     4 Query        select @@collation_database
  74.                     4 Query        SHOW TRIGGERS LIKE 'z\_binlog\_list'
  75.                     4 Query        SET SESSION character_set_results = 'utf8'
  76.                     4 Query        show table status like 'z\_session'
  77.                     4 Query        SET OPTION SQL_QUOTE_SHOW_CREATE=1
  78.                     4 Query        SET SESSION character_set_results = 'binary'
  79.                     4 Query        show create table `z_session`
  80.                     4 Query        SET SESSION character_set_results = 'utf8'
  81.                     4 Query        show fields from `z_session`
  82.                     4 Query        SELECT /*!40001 SQL_NO_CACHE */ * FROM `z_session`
  83.                     4 Query        SET SESSION character_set_results = 'binary'
  84.                     4 Query        use `syant`
  85.                     4 Query        select @@collation_database
  86.                     4 Query        SHOW TRIGGERS LIKE 'z\_session'
  87.                     4 Query        SET SESSION character_set_results = 'utf8'
  88.                     4 Quit
复制代码






欢迎光临 深圳全飞鸿 (http://www.nagomes.com/disc/) Powered by Discuz! X3.2