SlideShare a Scribd company logo
1 of 35
Download to read offline
MySQL 5.6 Replication New feature
데이터기술팀 운영파트
조민
INDEX

1.
2.
3.
4.
5.
6.

New
New
New
New
New
New

Crash-Safe Slaves
Multi-threaded Slaves
Time-delayed Replication
Optimized Row-based Replication
Replication Checksums
Global Transactions Identifiers (GTIDs)
INDEX

1.
2.
3.
4.
5.
6.

New
New
New
New
New
New

Crash-Safe Slaves
Multi-threaded Slaves
Time-delayed Replication
Optimized Row-based Replication
Replication Checksums
Global Transactions Identifiers (GTIDs)
1. New Crash-Safe Slaves (설정)
my.cnf
relay-log-info-repository=TABLE
master-info-repository=TABLE

# default FILE
==============================================================
mysql> stop slave;
Query OK, 0 rows affected, 1 warning (0.00 sec)
mysql> set global master_info_repository='TABLE';
Query OK, 0 rows affected (0.02 sec)

mysql> set global relay_log_info_repository='TABLE';
Query OK, 0 rows affected (0.02 sec)
mysql> start slave;
Query OK, 0 rows affected, 1 warning (0.09 sec)
1. New Crash-Safe Slaves
mysql> select * from mysql.slave_master_infoG
*************************** 1. row ***************************
Number_of_lines: 23
Master_log_name: mysql-bin.000005
Master_log_pos: 2396
Host: 10.98.98.115
User_name: mig
User_password: mig
Port: 7979
Connect_retry: 60
Enabled_ssl: 0
Ssl_ca:
Ssl_capath:
Ssl_cert:
Ssl_cipher:
Ssl_key:
Ssl_verify_server_cert: 0
Heartbeat: 1800
Bind:
Ignored_server_ids: 0
Uuid: c35b769a-8fac-11e2-a667-00a0d1e293e2
Retry_count: 86400
Ssl_crl:
Ssl_crlpath:
Enabled_auto_position: 0
1 row in set (0.00 sec)
1. New Crash-Safe Slaves

mysql> select * from mysql.slave_relay_log_infoG
*************************** 1. row ***************************
Number_of_lines: 7
Relay_log_name: ./db-ha-db2-relay-bin.000011
Relay_log_pos: 1770
Master_log_name: mysql-bin.000005
Master_log_pos: 2396
Sql_delay: 60
Number_of_workers: 0
Id: 1
1 row in set (0.00 sec)

장애 시 Duplication 제거
Query 이용 !!! (DIS)
느리다!!!
2. New Multi-threaded Slaves

1.
2.
3.
4.
5.
6.

New
New
New
New
New
New

Crash-Safe Slaves
Multi-threaded Slaves
Time-delayed Replication
Optimized Row-based Replication
Replication Checksums
Global Transactions Identifiers (GTIDs)
2. New Multi-threaded Slaves (설정)

my.cnf
relay-log-info-repository=TABLE
master-info-repository=TABLE
slave-parallel-workers=3
=============================================
mysql> stop slave;
Query OK, 0 rows affected, 1 warning (0.09 sec)
mysql> set global slave_parallel_workers=3;
Query OK, 0 rows affected (0.00 sec)
mysql> start slave;
Query OK, 0 rows affected, 1 warning (0.09 sec)
2. New Multi-threaded Slaves

MASTER
mysql> show processlist;
+-----+------+--------------------------+------+-------------+------+-----------------------------------------------------------------------+------------------+
| Id | User | Host
| db
| Command
| Time | State
| Info
|
+-----+------+--------------------------+------+-------------+------+-----------------------------------------------------------------------+------------------+
| 146 | root | localhost
| NULL | Sleep
| 362 |
| NULL
|
| 147 | mig | db-ha-db2.daum.net:34782 | NULL | Binlog Dump | 269 | Master has sent all binlog to slave; waiting for binlog to be updated | NULL
|
| 148 | root | localhost
| NULL | Query
|
0 | init
| show processlist |
+-----+------+--------------------------+------+-------------+------+-----------------------------------------------------------------------+------------------+
3 rows in set (0.00 sec)

SLAVE
+-----+-------------+-----------+-------+---------+------+-----------------------------------------------------------------------------+------------------+
| Id | User
| Host
| db
| Command | Time | State
| Info
|
+-----+-------------+-----------+-------+---------+------+-----------------------------------------------------------------------------+------------------+
|
1 | system user |
| NULL | Connect | 1692 | Waiting for master to send event
| NULL
|
| 12 | root
| localhost | mysql | Query
|
0 | init
| show processlist |
| 602 | system user |
| NULL | Connect |
17 | Slave has read all relay log; waiting for the slave I/O thread to update it | NULL
|
| 603 | system user |
| NULL | Connect |
98 | Waiting for an event from Coordinator
| NULL
|
| 604 | system user |
| NULL | Connect |
79 | Waiting for an event from Coordinator
| NULL
|
| 605 | system user |
| NULL | Connect |
85 | Waiting for an event from Coordinator
| NULL
|
+-----+-------------+-----------+-------+---------+------+-----------------------------------------------------------------------------+------------------+
2. New Multi-threaded Slaves
mysql> select * from slave_worker_infoG
*************************** 1. row ***************************
Id: 1
Relay_log_name:
Relay_log_pos: 0
Master_log_name:
Master_log_pos: 0
Checkpoint_relay_log_name:
Checkpoint_relay_log_pos: 0
Checkpoint_master_log_name:
Checkpoint_master_log_pos: 0
Checkpoint_seqno: 0
Checkpoint_group_size: 64
Checkpoint_group_bitmap:
*************************** 2. row ***************************
Id: 2
Relay_log_name:
Relay_log_pos: 0
Master_log_name:
Master_log_pos: 0
Checkpoint_relay_log_name:
Checkpoint_relay_log_pos: 0
Checkpoint_master_log_name:
Checkpoint_master_log_pos: 0
Checkpoint_seqno: 0
Checkpoint_group_size: 64
Checkpoint_group_bitmap:
*************************** 3. row ***************************
Id: 3
Relay_log_name:
Relay_log_pos: 0
Master_log_name:
Master_log_pos: 0
Checkpoint_relay_log_name:
Checkpoint_relay_log_pos: 0
Checkpoint_master_log_name:
Checkpoint_master_log_pos: 0
Checkpoint_seqno: 0
Checkpoint_group_size: 64
Checkpoint_group_bitmap:
3 rows in set (0.00 sec)
2. New Multi-threaded Slaves (thread 1)
MASTER
mysql> show processlist;
+----+------+--------------------------+-------+-------------+------+-----------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------+
| Id | User | Host
| db
| Command
| Time | State
| Info
|
+----+------+--------------------------+-------+-------------+------+-----------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------+
| 5 | root | localhost
| mysql | Query
|
0 | init
| show processlist
|
| 7 | mig | db-ha-db2.daum.net:58746 | NULL | Binlog Dump | 208 | Master has sent all binlog to slave; waiting for binlog to be updated | NULL
|
| 9 | root | localhost
| test | Query
|
1 | query end
| INSERT INTO sbtest(k, c, pad)
VALUES (0,' ','qqqqqqqqqqwwwwwwwwwweeeeeeeeeerrrrrrrrrrtttttttttt'),(0 |
+----+------+--------------------------+-------+-------------+------+-----------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------+
3 rows in set (0.00 sec)
2. New Multi-threaded Slaves
mysql> select * from slave_worker_infoG
*************************** 1. row ***************************
Id: 1
Relay_log_name:
Relay_log_pos: 0
Master_log_name:
Master_log_pos: 0
Checkpoint_relay_log_name:
Checkpoint_relay_log_pos: 0
Checkpoint_master_log_name:
Checkpoint_master_log_pos: 0
Checkpoint_seqno: 0
Checkpoint_group_size: 64
Checkpoint_group_bitmap:
*************************** 2. row ***************************
Id: 2
Relay_log_name:
Relay_log_pos: 0
Master_log_name:
Master_log_pos: 0
Checkpoint_relay_log_name:
Checkpoint_relay_log_pos: 0
Checkpoint_master_log_name:
Checkpoint_master_log_pos: 0
Checkpoint_seqno: 0
Checkpoint_group_size: 64
Checkpoint_group_bitmap:
*************************** 3. row ***************************
Id: 3
Relay_log_name: ./db-ha-db2-relay-bin.000013
Relay_log_pos: 34788107
Master_log_name: mysql-bin.000003
Master_log_pos: 95818597
Checkpoint_relay_log_name: ./db-ha-db2-relay-bin.000013
Checkpoint_relay_log_pos: 33567507
Checkpoint_master_log_name: mysql-bin.000003
Checkpoint_master_log_pos: 94597997
Checkpoint_seqno: 1
Checkpoint_group_size: 64
Checkpoint_group_bitmap:
3 rows in set (0.00 sec)
2. New Multi-threaded Slaves
mysql> select * from slave_worker_info G
*************************** 1. row ***************************
Id: 1
Relay_log_name:
Relay_log_pos: 0
Master_log_name:
Master_log_pos: 0
Checkpoint_relay_log_name:
Checkpoint_relay_log_pos: 0
Checkpoint_master_log_name:
Checkpoint_master_log_pos: 0
Checkpoint_seqno: 0
Checkpoint_group_size: 64
Checkpoint_group_bitmap:
*************************** 2. row ***************************
Id: 2
Relay_log_name: ./db-ha-db2-relay-bin.000013
Relay_log_pos: 182013734
Master_log_name: mysql-bin.000003
Master_log_pos: 243044224
Checkpoint_relay_log_name: ./db-ha-db2-relay-bin.000013
Checkpoint_relay_log_pos: 178351946
Checkpoint_master_log_name: mysql-bin.000003
Checkpoint_master_log_pos: 239382436
Checkpoint_seqno: 5
Checkpoint_group_size: 64
Checkpoint_group_bitmap: *
*************************** 3. row ***************************
Id: 3
Relay_log_name: ./db-ha-db2-relay-bin.000013
Relay_log_pos: 181403434
Master_log_name: mysql-bin.000003
Master_log_pos: 242433924
Checkpoint_relay_log_name: ./db-ha-db2-relay-bin.000013
Checkpoint_relay_log_pos: 178351946
Checkpoint_master_log_name: mysql-bin.000003
Checkpoint_master_log_pos: 239382436
Checkpoint_seqno: 4
Checkpoint_group_size: 64
Checkpoint_group_bitmap:
3 rows in set (0.00 sec)
2. New Multi-threaded Slaves

-

CPU: 2 sockets, 6 cores with hyper-threading, 2930 MHz.
OS: 64-bit Oracle Enterprise Linux 6.1
Memory: 48 GB
sysbench unit test with multiple schema

빠르다!!!

Database 단위.... -_-;
Distribution ???
INDEX

1.
2.
3.
4.
5.
6.

New
New
New
New
New
New

Crash-Safe Slaves
Multi-threaded Slaves
Time-delayed Replication
Optimized Row-based Replication
Replication Checksums
Global Transactions Identifiers (GTIDs)
3. New Time-delayed Replication

mysql> stop slave;
Query OK, 0 rows affected (0.04 sec)
mysql> CHANGE MASTER TO MASTER_DELAY =60;
Query OK, 0 rows affected (0.06 sec)
mysql> start slave;
Query OK, 0 rows affected, 1 warning (0.06 sec)
3. New Time-delayed Replication

mysql> show slave statusG
*************************** 1. row ***************************
Master_Log_File: mysql-bin.000005
Read_Master_Log_Pos: 2652
Relay_Log_File: db-ha-db2-relay-bin.000002
Relay_Log_Pos: 314
Relay_Master_Log_File: mysql-bin.000005
Slave_IO_Running: Yes
Slave_SQL_Running: Yes
Exec_Master_Log_Pos: 2396
SQL_Delay: 60
SQL_Remaining_Delay: 33
Slave_SQL_Running_State: Waiting until MASTER_DELAY seconds after master
executed event
1 row in set (0.00 sec)
3. New Time-delayed Replication

Drop 을 막을 수 있다…

서비스 이용에는... -_-;
INDEX

1.
2.
3.
4.
5.
6.

New
New
New
New
New
New

Crash-Safe Slaves
Multi-threaded Slaves
Time-delayed Replication
Optimized Row-based Replication
Replication Checksums
Global Transactions Identifiers (GTIDs)
4. New Optimized Row-based Replication

my.cnf
binlog_row_image=MINMAL

#
#
#
#

default FULL
full : Log all columns
minimal : Log only changed columns, and columns needed to identify rows
noblob : Log all columns, except for unneeded BLOB and TEXT columns
4. New Optimized Row-based Replication
mysql> reset master;
Query OK, 0 rows affected (0.08 sec)
mysql> show master status;
+------------------+----------+--------------+------------------+-------------------+
| File
| Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set |
+------------------+----------+--------------+------------------+-------------------+
| mysql-bin.000001 |
151 |
|
|
|
+------------------+----------+--------------+------------------+-------------------+
1 row in set (0.00 sec)

mysql> show session variables like 'binlog_row_image';
+------------------+-------+
| Variable_name
| Value |
+------------------+-------+
| binlog_row_image | FULL |
+------------------+-------+
1 row in set (0.00 sec)
mysql> update sss set k=10 where id=1;
Query OK, 1 row affected (0.01 sec)
Rows matched: 1 Changed: 1 Warnings: 0
mysql> show master status;
+------------------+----------+--------------+------------------+----------------------------------------+
| File
| Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set
|
+------------------+----------+--------------+------------------+----------------------------------------+
| mysql-bin.000001 |
511 |
|
| c35b769a-8fac-11e2-a667-00a0d1e293e2:1 |
+------------------+----------+--------------+------------------+----------------------------------------+
1 row in set (0.00 sec)
4. New Optimized Row-based Replication

mysql> set session binlog_row_image='MINIMAL';
Query OK, 0 rows affected (0.00 sec)
mysql> reset master;
Query OK, 0 rows affected (0.01 sec)
mysql> show master status;
+------------------+----------+--------------+------------------+-------------------+
| File
| Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set |
+------------------+----------+--------------+------------------+-------------------+
| mysql-bin.000001 |
151 |
|
|
|
+------------------+----------+--------------+------------------+-------------------+
1 row in set (0.00 sec)
mysql> update sss set k=11 where id=1;
Query OK, 1 row affected (0.02 sec)
Rows matched: 1 Changed: 1 Warnings: 0
mysql> show master status;
+------------------+----------+--------------+------------------+----------------------------------------+
| File
| Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set
|
+------------------+----------+--------------+------------------+----------------------------------------+
| mysql-bin.000001 |
399 |
|
| c35b769a-8fac-11e2-a667-00a0d1e293e2:1 |
+------------------+----------+--------------+------------------+----------------------------------------+
1 row in set (0.00 sec)
4. New Optimized Row-based Replication
mysql> show session variables like 'binlog_row_image';
+------------------+-------+
| Variable_name
| Value |
+------------------+-------+
| binlog_row_image | FULL |
+------------------+-------+
1 row in set (0.00 sec)mysql> update sss set k=12 where
id=1;
Query OK, 1 row affected (0.01 sec)
Rows matched: 1 Changed: 1 Warnings: 0

mysql> show session variables like 'binlog_row_image';
+------------------+---------+
| Variable_name
| Value
|
+------------------+---------+
| binlog_row_image | MINIMAL |
+------------------+---------+
1 row in set (0.00 sec)mysql> update sss set k=11 where
id=1;
Query OK, 1 row affected (0.02 sec)
Rows matched: 1 Changed: 1 Warnings: 0

### UPDATE `ttt`.`sss`
### WHERE
###
@1=1
###
@2=11
###
@3=''
###
@4='qqqqqqqqqqwwwwwwwwwweeeeeeeeeerrrrrrrrrrtttttttttt
'
### SET
###
@1=1
###
@2=12
###
@3=''
###
@4='qqqqqqqqqqwwwwwwwwwweeeeeeeeeerrrrrrrrrrtttttttttt
'
# at 728

### UPDATE `ttt`.`sss`
### WHERE
###
@1=1
### SET
###
@2=11
# at 368
4. New Optimized Row-based Replication
CREATE TABLE `t1` (
`a` int(11) NOT NULL DEFAULT '0',
`b` int(11) DEFAULT NULL,
`c` char(10) DEFAULT NULL,
PRIMARY KEY (`a`)
)
update t1 set b=10 where a=1;
### UPDATE `ttt`.`t1`
### WHERE
###
@1=1
### SET
###
@2=10

CREATE TABLE `t2` (
`a` int(11) NOT NULL DEFAULT '0',
`b` int(11) DEFAULT NULL,
`c` char(10) DEFAULT NULL,
PRIMARY KEY (`a`),
KEY `b` (`b`)
)
update t2 set b=10 where b=1;
### UPDATE `ttt`.`t2`
### WHERE
###
@1=101
### SET
###
@2=10

CREATE TABLE `t3` (
`a` int(11) DEFAULT NULL,
`b` int(11) DEFAULT NULL,
`c` char(10) DEFAULT NULL
)
update t3 set b=10 where a=1;
### UPDATE `ttt`.`t3`
### WHERE
###
@1=1
###
@2=100
###
@3='aaaaa'
### SET
###
@2=10
4. New Optimized Row-based Replication

스마트해진 ROW format

PK가 필요함 !!!
INDEX

1.
2.
3.
4.
5.
6.

New
New
New
New
New
New

Crash-Safe Slaves
Multi-threaded Slaves
Time-delayed Replication
Optimized Row-based Replication
Replication Checksums
Global Transactions Identifiers (GTIDs)
5. New Replication Checksums

MASTER

SLAVE

SQL thread
Dump thread
I/O thread
relay log
binary log

binlog_checksum
Default:CRC32 {NONE|CRC32}
master_verify_checksum Default:OFF {0|1}
slave_sql_verify_checksum Default:0 {0|1}
5. New Replication Checksums
mysql> show binlog events in 'mysql-bin.000007' from 191;
+------------------+-----+------------+-----------+-------------+--------------------------------------------------------------------+
| Log_name
| Pos | Event_type | Server_id | End_log_pos | Info
|
+------------------+-----+------------+-----------+-------------+--------------------------------------------------------------------+
| mysql-bin.000007 | 191 | Gtid
|
1234 |
239 | SET @@SESSION.GTID_NEXT= 'c35b769a-8fac-11e2-a667-00a0d1e293e2:39' |
| mysql-bin.000007 | 239 | Query
|
1234 |
316 | BEGIN
|
| mysql-bin.000007 | 316 | Query
|
1234 |
418 | use `ttt`; insert into ttt values (12345)
|
| mysql-bin.000007 | 418 | Xid
|
1234 |
449 | COMMIT /* xid=1053612 */
|
+------------------+-----+------------+-----------+-------------+--------------------------------------------------------------------+
4 rows in set (0.00 sec)

Binlog 수정
mysql> show binlog events in 'mysql-bin.000007' from 191;
+------------------+-----+------------+-----------+-------------+--------------------------------------------------------------------+
| Log_name
| Pos | Event_type | Server_id | End_log_pos | Info
|
+------------------+-----+------------+-----------+-------------+--------------------------------------------------------------------+
| mysql-bin.000007 | 191 | Gtid
|
1234 |
239 | SET @@SESSION.GTID_NEXT= 'c35b769a-8fac-11e2-a667-00a0d1e293e2:39' |
| mysql-bin.000007 | 239 | Query
|
1234 |
316 | BEGIN
|
| mysql-bin.000007 | 316 | Query
|
1234 |
418 | use `ttt`; insert into ttt values (12341)
|
| mysql-bin.000007 | 418 | Xid
|
1234 |
449 | COMMIT /* xid=1053612 */
|
+------------------+-----+------------+-----------+-------------+--------------------------------------------------------------------+
4 rows in set (0.00 sec)
mysql> SET GLOBAL MASTER_VERIFY_CHECKSUM=1;
Query OK, 0 rows affected (0.00 sec)
mysql> show binlog events in 'mysql-bin.000007' from 191;
ERROR 1220 (HY000): Error when executing command SHOW BINLOG EVENTS: Wrong offset or I/O error
#130327 20:59:04 server id 1234
use `ttt`/*!*/;
SET TIMESTAMP=1364385544/*!*/;
insert into ttt values (12645)
/*!*/;
# at 418

end_log_pos 418 CRC32 0x171597fb

Query

thread_id=148

exec_time=0

error_code=0
5. New Replication Checksums

MASTER

SLAVE

Dump thread

SQL
thread
I/O
thread

relay log

binary log
장애부분 최소화

느려요~
INDEX

1.
2.
3.
4.
5.
6.

New
New
New
New
New
New

Crash-Safe Slaves
Multi-threaded Slaves
Time-delayed Replication
Optimized Row-based Replication
Replication Checksums
Global Transactions Identifiers (GTIDs)
6. New Global Transactions Identifiers (GTIDs)
my.cnf
log-bin
log-slave-updates
gtid-mode=ON
disable-gtid-unsafe-statements

mysql> show master statusG
*************************** 1. row ***************************
File: mysql-bin.000007
Position: 449
Binlog_Do_DB:
Binlog_Ignore_DB:
Executed_Gtid_Set: c35b769a-8fac-11e2-a667-00a0d1e293e2:1-39
1 row in set (0.00 sec)
mysql> show slave statusG
Retrieved_Gtid_Set: c35b769a-8fac-11e2-a667-00a0d1e293e2:38-45
Executed_Gtid_Set: 6873760e-8fb3-11e2-a693-00a0d1e291dc:1-2,
c35b769a-8fac-11e2-a667-00a0d1e293e2:1-61152
6. New Global Transactions Identifiers (GTIDs)
6. New Global Transactions Identifiers (GTIDs)
고맙습니다

More Related Content

What's hot

Oracle cluster installation with grid and nfs
Oracle cluster  installation with grid and nfsOracle cluster  installation with grid and nfs
Oracle cluster installation with grid and nfsChanaka Lasantha
 
Managing MariaDB Server operations with Percona Toolkit
Managing MariaDB Server operations with Percona ToolkitManaging MariaDB Server operations with Percona Toolkit
Managing MariaDB Server operations with Percona ToolkitSveta Smirnova
 
My sql monitoring cu沙龙
My sql monitoring cu沙龙My sql monitoring cu沙龙
My sql monitoring cu沙龙colderboy17
 
How to Avoid Pitfalls in Schema Upgrade with Galera
How to Avoid Pitfalls in Schema Upgrade with GaleraHow to Avoid Pitfalls in Schema Upgrade with Galera
How to Avoid Pitfalls in Schema Upgrade with GaleraSveta Smirnova
 
Drizzle to MySQL, Stress Free Migration
Drizzle to MySQL, Stress Free MigrationDrizzle to MySQL, Stress Free Migration
Drizzle to MySQL, Stress Free MigrationAndrew Hutchings
 
MySQL Cluster 7.3 Performance Tuning - Severalnines Slides
MySQL Cluster 7.3 Performance Tuning - Severalnines SlidesMySQL Cluster 7.3 Performance Tuning - Severalnines Slides
MySQL Cluster 7.3 Performance Tuning - Severalnines SlidesSeveralnines
 
Catalystの設定シナリオ(メモ段階)
Catalystの設定シナリオ(メモ段階)Catalystの設定シナリオ(メモ段階)
Catalystの設定シナリオ(メモ段階)78tch
 
MySQL InnoDB Cluster 미리보기 (remote cluster test)
MySQL InnoDB Cluster 미리보기 (remote cluster test)MySQL InnoDB Cluster 미리보기 (remote cluster test)
MySQL InnoDB Cluster 미리보기 (remote cluster test)Seungmin Yu
 
OpenWorld Sep14 12c for_developers
OpenWorld Sep14 12c for_developersOpenWorld Sep14 12c for_developers
OpenWorld Sep14 12c for_developersConnor McDonald
 
MySQL Multi-Source Replication for PL2016
MySQL Multi-Source Replication for PL2016MySQL Multi-Source Replication for PL2016
MySQL Multi-Source Replication for PL2016Wagner Bianchi
 
MySQL Audit using Percona audit plugin and ELK
MySQL Audit using Percona audit plugin and ELKMySQL Audit using Percona audit plugin and ELK
MySQL Audit using Percona audit plugin and ELKYoungHeon (Roy) Kim
 
OakTable World Sep14 clonedb
OakTable World Sep14 clonedb OakTable World Sep14 clonedb
OakTable World Sep14 clonedb Connor McDonald
 
New features in ProxySQL 2.0 (updated to 2.0.9) by Rene Cannao (ProxySQL)
New features in ProxySQL 2.0 (updated to 2.0.9) by Rene Cannao (ProxySQL)New features in ProxySQL 2.0 (updated to 2.0.9) by Rene Cannao (ProxySQL)
New features in ProxySQL 2.0 (updated to 2.0.9) by Rene Cannao (ProxySQL)Altinity Ltd
 
Using Apache Spark and MySQL for Data Analysis
Using Apache Spark and MySQL for Data AnalysisUsing Apache Spark and MySQL for Data Analysis
Using Apache Spark and MySQL for Data AnalysisSveta Smirnova
 
OSMC 2008 | Monitoring MySQL by Geert Vanderkelen
OSMC 2008 | Monitoring MySQL by Geert VanderkelenOSMC 2008 | Monitoring MySQL by Geert Vanderkelen
OSMC 2008 | Monitoring MySQL by Geert VanderkelenNETWAYS
 
Percona Toolkit for Effective MySQL Administration
Percona Toolkit for Effective MySQL AdministrationPercona Toolkit for Effective MySQL Administration
Percona Toolkit for Effective MySQL AdministrationMydbops
 
Varnish presentation for the Symfony Zaragoza user group
Varnish presentation for the Symfony Zaragoza user groupVarnish presentation for the Symfony Zaragoza user group
Varnish presentation for the Symfony Zaragoza user groupJorge Nerín
 
Rolling with the Times: Using wheels, pbr, and Twine for Distributing and Ins...
Rolling with the Times: Using wheels, pbr, and Twine for Distributing and Ins...Rolling with the Times: Using wheels, pbr, and Twine for Distributing and Ins...
Rolling with the Times: Using wheels, pbr, and Twine for Distributing and Ins...doughellmann
 

What's hot (20)

Oracle cluster installation with grid and nfs
Oracle cluster  installation with grid and nfsOracle cluster  installation with grid and nfs
Oracle cluster installation with grid and nfs
 
Managing MariaDB Server operations with Percona Toolkit
Managing MariaDB Server operations with Percona ToolkitManaging MariaDB Server operations with Percona Toolkit
Managing MariaDB Server operations with Percona Toolkit
 
My sql monitoring cu沙龙
My sql monitoring cu沙龙My sql monitoring cu沙龙
My sql monitoring cu沙龙
 
MySQL 5.5 Guide to InnoDB Status
MySQL 5.5 Guide to InnoDB StatusMySQL 5.5 Guide to InnoDB Status
MySQL 5.5 Guide to InnoDB Status
 
How to Avoid Pitfalls in Schema Upgrade with Galera
How to Avoid Pitfalls in Schema Upgrade with GaleraHow to Avoid Pitfalls in Schema Upgrade with Galera
How to Avoid Pitfalls in Schema Upgrade with Galera
 
Drizzle to MySQL, Stress Free Migration
Drizzle to MySQL, Stress Free MigrationDrizzle to MySQL, Stress Free Migration
Drizzle to MySQL, Stress Free Migration
 
MySQL Cluster 7.3 Performance Tuning - Severalnines Slides
MySQL Cluster 7.3 Performance Tuning - Severalnines SlidesMySQL Cluster 7.3 Performance Tuning - Severalnines Slides
MySQL Cluster 7.3 Performance Tuning - Severalnines Slides
 
Catalystの設定シナリオ(メモ段階)
Catalystの設定シナリオ(メモ段階)Catalystの設定シナリオ(メモ段階)
Catalystの設定シナリオ(メモ段階)
 
MySQL InnoDB Cluster 미리보기 (remote cluster test)
MySQL InnoDB Cluster 미리보기 (remote cluster test)MySQL InnoDB Cluster 미리보기 (remote cluster test)
MySQL InnoDB Cluster 미리보기 (remote cluster test)
 
OpenWorld Sep14 12c for_developers
OpenWorld Sep14 12c for_developersOpenWorld Sep14 12c for_developers
OpenWorld Sep14 12c for_developers
 
Query logging with proxysql
Query logging with proxysqlQuery logging with proxysql
Query logging with proxysql
 
MySQL Multi-Source Replication for PL2016
MySQL Multi-Source Replication for PL2016MySQL Multi-Source Replication for PL2016
MySQL Multi-Source Replication for PL2016
 
MySQL Audit using Percona audit plugin and ELK
MySQL Audit using Percona audit plugin and ELKMySQL Audit using Percona audit plugin and ELK
MySQL Audit using Percona audit plugin and ELK
 
OakTable World Sep14 clonedb
OakTable World Sep14 clonedb OakTable World Sep14 clonedb
OakTable World Sep14 clonedb
 
New features in ProxySQL 2.0 (updated to 2.0.9) by Rene Cannao (ProxySQL)
New features in ProxySQL 2.0 (updated to 2.0.9) by Rene Cannao (ProxySQL)New features in ProxySQL 2.0 (updated to 2.0.9) by Rene Cannao (ProxySQL)
New features in ProxySQL 2.0 (updated to 2.0.9) by Rene Cannao (ProxySQL)
 
Using Apache Spark and MySQL for Data Analysis
Using Apache Spark and MySQL for Data AnalysisUsing Apache Spark and MySQL for Data Analysis
Using Apache Spark and MySQL for Data Analysis
 
OSMC 2008 | Monitoring MySQL by Geert Vanderkelen
OSMC 2008 | Monitoring MySQL by Geert VanderkelenOSMC 2008 | Monitoring MySQL by Geert Vanderkelen
OSMC 2008 | Monitoring MySQL by Geert Vanderkelen
 
Percona Toolkit for Effective MySQL Administration
Percona Toolkit for Effective MySQL AdministrationPercona Toolkit for Effective MySQL Administration
Percona Toolkit for Effective MySQL Administration
 
Varnish presentation for the Symfony Zaragoza user group
Varnish presentation for the Symfony Zaragoza user groupVarnish presentation for the Symfony Zaragoza user group
Varnish presentation for the Symfony Zaragoza user group
 
Rolling with the Times: Using wheels, pbr, and Twine for Distributing and Ins...
Rolling with the Times: Using wheels, pbr, and Twine for Distributing and Ins...Rolling with the Times: Using wheels, pbr, and Twine for Distributing and Ins...
Rolling with the Times: Using wheels, pbr, and Twine for Distributing and Ins...
 

Viewers also liked

Viewers also liked (20)

Indices 22 oct2013071428
Indices 22 oct2013071428Indices 22 oct2013071428
Indices 22 oct2013071428
 
Adventum
AdventumAdventum
Adventum
 
Secret Media
Secret MediaSecret Media
Secret Media
 
The pot of gold
The pot of goldThe pot of gold
The pot of gold
 
Practica composicion
Practica composicionPractica composicion
Practica composicion
 
Indices 03 sep2013053843
Indices 03 sep2013053843Indices 03 sep2013053843
Indices 03 sep2013053843
 
Indices snapshot 04 June 2014
Indices snapshot 04 June 2014Indices snapshot 04 June 2014
Indices snapshot 04 June 2014
 
Indices 01 nov2013060316
Indices 01 nov2013060316Indices 01 nov2013060316
Indices 01 nov2013060316
 
Indices 24 sep2013052745
Indices 24 sep2013052745Indices 24 sep2013052745
Indices 24 sep2013052745
 
Indices 20 mar2013052813
Indices 20 mar2013052813Indices 20 mar2013052813
Indices 20 mar2013052813
 
Indices 13 sep2012064135
Indices 13 sep2012064135Indices 13 sep2012064135
Indices 13 sep2012064135
 
Caroline surges the ultimate gift
Caroline surges the ultimate giftCaroline surges the ultimate gift
Caroline surges the ultimate gift
 
Indices 18 oct2013052548
Indices 18 oct2013052548Indices 18 oct2013052548
Indices 18 oct2013052548
 
Investiguem
InvestiguemInvestiguem
Investiguem
 
Updates
UpdatesUpdates
Updates
 
Indices 26 sep2013053832
Indices 26 sep2013053832Indices 26 sep2013053832
Indices 26 sep2013053832
 
Сервис видеомаркетинга ВИЛКА
Сервис видеомаркетинга ВИЛКАСервис видеомаркетинга ВИЛКА
Сервис видеомаркетинга ВИЛКА
 
Indices 24 oct2013051811
Indices 24 oct2013051811Indices 24 oct2013051811
Indices 24 oct2013051811
 
Nina carlsen catching fire
Nina carlsen catching fireNina carlsen catching fire
Nina carlsen catching fire
 
Sortida a sant pol
Sortida a sant polSortida a sant pol
Sortida a sant pol
 

Similar to Mysql56 replication

MySQL 5.7 innodb_enhance_partii_20160527
MySQL 5.7 innodb_enhance_partii_20160527MySQL 5.7 innodb_enhance_partii_20160527
MySQL 5.7 innodb_enhance_partii_20160527Saewoong Lee
 
Basic Knowledge on MySql Replication
Basic Knowledge on MySql ReplicationBasic Knowledge on MySql Replication
Basic Knowledge on MySql ReplicationTasawr Interactive
 
MySQL5.7で遊んでみよう
MySQL5.7で遊んでみようMySQL5.7で遊んでみよう
MySQL5.7で遊んでみようyoku0825
 
Fluentd 20150918 no_demo_public
Fluentd 20150918 no_demo_publicFluentd 20150918 no_demo_public
Fluentd 20150918 no_demo_publicSaewoong Lee
 
16 MySQL Optimization #burningkeyboards
16 MySQL Optimization #burningkeyboards16 MySQL Optimization #burningkeyboards
16 MySQL Optimization #burningkeyboardsDenis Ristic
 
MySQL Performance Schema in 20 Minutes
 MySQL Performance Schema in 20 Minutes MySQL Performance Schema in 20 Minutes
MySQL Performance Schema in 20 MinutesSveta Smirnova
 
Beginner guide to mysql command line
Beginner guide to mysql command lineBeginner guide to mysql command line
Beginner guide to mysql command linePriti Solanki
 
MySQL8.0_performance_schema.pptx
MySQL8.0_performance_schema.pptxMySQL8.0_performance_schema.pptx
MySQL8.0_performance_schema.pptxNeoClova
 
Bare-metal and Virtual Provisioning with Razor
Bare-metal and Virtual Provisioning with RazorBare-metal and Virtual Provisioning with Razor
Bare-metal and Virtual Provisioning with RazorKristian Reese
 
Highload Perf Tuning
Highload Perf TuningHighload Perf Tuning
Highload Perf TuningHighLoad2009
 
MySQL 8.0.18 - New Features Summary
MySQL 8.0.18 - New Features SummaryMySQL 8.0.18 - New Features Summary
MySQL 8.0.18 - New Features SummaryOlivier DASINI
 
MySQL sys schema deep dive
MySQL sys schema deep diveMySQL sys schema deep dive
MySQL sys schema deep diveMark Leith
 
Advanced Query Optimizer Tuning and Analysis
Advanced Query Optimizer Tuning and AnalysisAdvanced Query Optimizer Tuning and Analysis
Advanced Query Optimizer Tuning and AnalysisMYXPLAIN
 
15 protips for mysql users pfz
15 protips for mysql users   pfz15 protips for mysql users   pfz
15 protips for mysql users pfzJoshua Thijssen
 

Similar to Mysql56 replication (20)

MySQL 5.7 innodb_enhance_partii_20160527
MySQL 5.7 innodb_enhance_partii_20160527MySQL 5.7 innodb_enhance_partii_20160527
MySQL 5.7 innodb_enhance_partii_20160527
 
Basic Knowledge on MySql Replication
Basic Knowledge on MySql ReplicationBasic Knowledge on MySql Replication
Basic Knowledge on MySql Replication
 
Curso de MySQL 5.7
Curso de MySQL 5.7Curso de MySQL 5.7
Curso de MySQL 5.7
 
MySQL5.7で遊んでみよう
MySQL5.7で遊んでみようMySQL5.7で遊んでみよう
MySQL5.7で遊んでみよう
 
Fluentd 20150918 no_demo_public
Fluentd 20150918 no_demo_publicFluentd 20150918 no_demo_public
Fluentd 20150918 no_demo_public
 
16 MySQL Optimization #burningkeyboards
16 MySQL Optimization #burningkeyboards16 MySQL Optimization #burningkeyboards
16 MySQL Optimization #burningkeyboards
 
MySQL Performance Schema in 20 Minutes
 MySQL Performance Schema in 20 Minutes MySQL Performance Schema in 20 Minutes
MySQL Performance Schema in 20 Minutes
 
Beginner guide to mysql command line
Beginner guide to mysql command lineBeginner guide to mysql command line
Beginner guide to mysql command line
 
MySQL8.0_performance_schema.pptx
MySQL8.0_performance_schema.pptxMySQL8.0_performance_schema.pptx
MySQL8.0_performance_schema.pptx
 
Bare-metal and Virtual Provisioning with Razor
Bare-metal and Virtual Provisioning with RazorBare-metal and Virtual Provisioning with Razor
Bare-metal and Virtual Provisioning with Razor
 
Highload Perf Tuning
Highload Perf TuningHighload Perf Tuning
Highload Perf Tuning
 
MySQL 8.0.18 - New Features Summary
MySQL 8.0.18 - New Features SummaryMySQL 8.0.18 - New Features Summary
MySQL 8.0.18 - New Features Summary
 
MySQL sys schema deep dive
MySQL sys schema deep diveMySQL sys schema deep dive
MySQL sys schema deep dive
 
Advanced Query Optimizer Tuning and Analysis
Advanced Query Optimizer Tuning and AnalysisAdvanced Query Optimizer Tuning and Analysis
Advanced Query Optimizer Tuning and Analysis
 
15 protips for mysql users pfz
15 protips for mysql users   pfz15 protips for mysql users   pfz
15 protips for mysql users pfz
 
Tugas praktikum smbd
Tugas praktikum smbdTugas praktikum smbd
Tugas praktikum smbd
 
Rmoug ashmaster
Rmoug ashmasterRmoug ashmaster
Rmoug ashmaster
 
Perf Tuning Short
Perf Tuning ShortPerf Tuning Short
Perf Tuning Short
 
Operation outbreak
Operation outbreakOperation outbreak
Operation outbreak
 
Instalar MySQL CentOS
Instalar MySQL CentOSInstalar MySQL CentOS
Instalar MySQL CentOS
 

Recently uploaded

Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024Scott Keck-Warren
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyAlfredo García Lavilla
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr LapshynFwdays
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxNavinnSomaal
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clashcharlottematthew16
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsMiki Katsuragi
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Enterprise Knowledge
 

Recently uploaded (20)

Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
Hot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort Service
Hot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort ServiceHot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort Service
Hot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort Service
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clash
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering Tips
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
 

Mysql56 replication

  • 1. MySQL 5.6 Replication New feature 데이터기술팀 운영파트 조민
  • 2. INDEX 1. 2. 3. 4. 5. 6. New New New New New New Crash-Safe Slaves Multi-threaded Slaves Time-delayed Replication Optimized Row-based Replication Replication Checksums Global Transactions Identifiers (GTIDs)
  • 3. INDEX 1. 2. 3. 4. 5. 6. New New New New New New Crash-Safe Slaves Multi-threaded Slaves Time-delayed Replication Optimized Row-based Replication Replication Checksums Global Transactions Identifiers (GTIDs)
  • 4. 1. New Crash-Safe Slaves (설정) my.cnf relay-log-info-repository=TABLE master-info-repository=TABLE # default FILE ============================================================== mysql> stop slave; Query OK, 0 rows affected, 1 warning (0.00 sec) mysql> set global master_info_repository='TABLE'; Query OK, 0 rows affected (0.02 sec) mysql> set global relay_log_info_repository='TABLE'; Query OK, 0 rows affected (0.02 sec) mysql> start slave; Query OK, 0 rows affected, 1 warning (0.09 sec)
  • 5. 1. New Crash-Safe Slaves mysql> select * from mysql.slave_master_infoG *************************** 1. row *************************** Number_of_lines: 23 Master_log_name: mysql-bin.000005 Master_log_pos: 2396 Host: 10.98.98.115 User_name: mig User_password: mig Port: 7979 Connect_retry: 60 Enabled_ssl: 0 Ssl_ca: Ssl_capath: Ssl_cert: Ssl_cipher: Ssl_key: Ssl_verify_server_cert: 0 Heartbeat: 1800 Bind: Ignored_server_ids: 0 Uuid: c35b769a-8fac-11e2-a667-00a0d1e293e2 Retry_count: 86400 Ssl_crl: Ssl_crlpath: Enabled_auto_position: 0 1 row in set (0.00 sec)
  • 6. 1. New Crash-Safe Slaves mysql> select * from mysql.slave_relay_log_infoG *************************** 1. row *************************** Number_of_lines: 7 Relay_log_name: ./db-ha-db2-relay-bin.000011 Relay_log_pos: 1770 Master_log_name: mysql-bin.000005 Master_log_pos: 2396 Sql_delay: 60 Number_of_workers: 0 Id: 1 1 row in set (0.00 sec) 장애 시 Duplication 제거 Query 이용 !!! (DIS) 느리다!!!
  • 7. 2. New Multi-threaded Slaves 1. 2. 3. 4. 5. 6. New New New New New New Crash-Safe Slaves Multi-threaded Slaves Time-delayed Replication Optimized Row-based Replication Replication Checksums Global Transactions Identifiers (GTIDs)
  • 8. 2. New Multi-threaded Slaves (설정) my.cnf relay-log-info-repository=TABLE master-info-repository=TABLE slave-parallel-workers=3 ============================================= mysql> stop slave; Query OK, 0 rows affected, 1 warning (0.09 sec) mysql> set global slave_parallel_workers=3; Query OK, 0 rows affected (0.00 sec) mysql> start slave; Query OK, 0 rows affected, 1 warning (0.09 sec)
  • 9. 2. New Multi-threaded Slaves MASTER mysql> show processlist; +-----+------+--------------------------+------+-------------+------+-----------------------------------------------------------------------+------------------+ | Id | User | Host | db | Command | Time | State | Info | +-----+------+--------------------------+------+-------------+------+-----------------------------------------------------------------------+------------------+ | 146 | root | localhost | NULL | Sleep | 362 | | NULL | | 147 | mig | db-ha-db2.daum.net:34782 | NULL | Binlog Dump | 269 | Master has sent all binlog to slave; waiting for binlog to be updated | NULL | | 148 | root | localhost | NULL | Query | 0 | init | show processlist | +-----+------+--------------------------+------+-------------+------+-----------------------------------------------------------------------+------------------+ 3 rows in set (0.00 sec) SLAVE +-----+-------------+-----------+-------+---------+------+-----------------------------------------------------------------------------+------------------+ | Id | User | Host | db | Command | Time | State | Info | +-----+-------------+-----------+-------+---------+------+-----------------------------------------------------------------------------+------------------+ | 1 | system user | | NULL | Connect | 1692 | Waiting for master to send event | NULL | | 12 | root | localhost | mysql | Query | 0 | init | show processlist | | 602 | system user | | NULL | Connect | 17 | Slave has read all relay log; waiting for the slave I/O thread to update it | NULL | | 603 | system user | | NULL | Connect | 98 | Waiting for an event from Coordinator | NULL | | 604 | system user | | NULL | Connect | 79 | Waiting for an event from Coordinator | NULL | | 605 | system user | | NULL | Connect | 85 | Waiting for an event from Coordinator | NULL | +-----+-------------+-----------+-------+---------+------+-----------------------------------------------------------------------------+------------------+
  • 10. 2. New Multi-threaded Slaves mysql> select * from slave_worker_infoG *************************** 1. row *************************** Id: 1 Relay_log_name: Relay_log_pos: 0 Master_log_name: Master_log_pos: 0 Checkpoint_relay_log_name: Checkpoint_relay_log_pos: 0 Checkpoint_master_log_name: Checkpoint_master_log_pos: 0 Checkpoint_seqno: 0 Checkpoint_group_size: 64 Checkpoint_group_bitmap: *************************** 2. row *************************** Id: 2 Relay_log_name: Relay_log_pos: 0 Master_log_name: Master_log_pos: 0 Checkpoint_relay_log_name: Checkpoint_relay_log_pos: 0 Checkpoint_master_log_name: Checkpoint_master_log_pos: 0 Checkpoint_seqno: 0 Checkpoint_group_size: 64 Checkpoint_group_bitmap: *************************** 3. row *************************** Id: 3 Relay_log_name: Relay_log_pos: 0 Master_log_name: Master_log_pos: 0 Checkpoint_relay_log_name: Checkpoint_relay_log_pos: 0 Checkpoint_master_log_name: Checkpoint_master_log_pos: 0 Checkpoint_seqno: 0 Checkpoint_group_size: 64 Checkpoint_group_bitmap: 3 rows in set (0.00 sec)
  • 11. 2. New Multi-threaded Slaves (thread 1) MASTER mysql> show processlist; +----+------+--------------------------+-------+-------------+------+-----------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------+ | Id | User | Host | db | Command | Time | State | Info | +----+------+--------------------------+-------+-------------+------+-----------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------+ | 5 | root | localhost | mysql | Query | 0 | init | show processlist | | 7 | mig | db-ha-db2.daum.net:58746 | NULL | Binlog Dump | 208 | Master has sent all binlog to slave; waiting for binlog to be updated | NULL | | 9 | root | localhost | test | Query | 1 | query end | INSERT INTO sbtest(k, c, pad) VALUES (0,' ','qqqqqqqqqqwwwwwwwwwweeeeeeeeeerrrrrrrrrrtttttttttt'),(0 | +----+------+--------------------------+-------+-------------+------+-----------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------+ 3 rows in set (0.00 sec)
  • 12. 2. New Multi-threaded Slaves mysql> select * from slave_worker_infoG *************************** 1. row *************************** Id: 1 Relay_log_name: Relay_log_pos: 0 Master_log_name: Master_log_pos: 0 Checkpoint_relay_log_name: Checkpoint_relay_log_pos: 0 Checkpoint_master_log_name: Checkpoint_master_log_pos: 0 Checkpoint_seqno: 0 Checkpoint_group_size: 64 Checkpoint_group_bitmap: *************************** 2. row *************************** Id: 2 Relay_log_name: Relay_log_pos: 0 Master_log_name: Master_log_pos: 0 Checkpoint_relay_log_name: Checkpoint_relay_log_pos: 0 Checkpoint_master_log_name: Checkpoint_master_log_pos: 0 Checkpoint_seqno: 0 Checkpoint_group_size: 64 Checkpoint_group_bitmap: *************************** 3. row *************************** Id: 3 Relay_log_name: ./db-ha-db2-relay-bin.000013 Relay_log_pos: 34788107 Master_log_name: mysql-bin.000003 Master_log_pos: 95818597 Checkpoint_relay_log_name: ./db-ha-db2-relay-bin.000013 Checkpoint_relay_log_pos: 33567507 Checkpoint_master_log_name: mysql-bin.000003 Checkpoint_master_log_pos: 94597997 Checkpoint_seqno: 1 Checkpoint_group_size: 64 Checkpoint_group_bitmap: 3 rows in set (0.00 sec)
  • 13. 2. New Multi-threaded Slaves mysql> select * from slave_worker_info G *************************** 1. row *************************** Id: 1 Relay_log_name: Relay_log_pos: 0 Master_log_name: Master_log_pos: 0 Checkpoint_relay_log_name: Checkpoint_relay_log_pos: 0 Checkpoint_master_log_name: Checkpoint_master_log_pos: 0 Checkpoint_seqno: 0 Checkpoint_group_size: 64 Checkpoint_group_bitmap: *************************** 2. row *************************** Id: 2 Relay_log_name: ./db-ha-db2-relay-bin.000013 Relay_log_pos: 182013734 Master_log_name: mysql-bin.000003 Master_log_pos: 243044224 Checkpoint_relay_log_name: ./db-ha-db2-relay-bin.000013 Checkpoint_relay_log_pos: 178351946 Checkpoint_master_log_name: mysql-bin.000003 Checkpoint_master_log_pos: 239382436 Checkpoint_seqno: 5 Checkpoint_group_size: 64 Checkpoint_group_bitmap: * *************************** 3. row *************************** Id: 3 Relay_log_name: ./db-ha-db2-relay-bin.000013 Relay_log_pos: 181403434 Master_log_name: mysql-bin.000003 Master_log_pos: 242433924 Checkpoint_relay_log_name: ./db-ha-db2-relay-bin.000013 Checkpoint_relay_log_pos: 178351946 Checkpoint_master_log_name: mysql-bin.000003 Checkpoint_master_log_pos: 239382436 Checkpoint_seqno: 4 Checkpoint_group_size: 64 Checkpoint_group_bitmap: 3 rows in set (0.00 sec)
  • 14. 2. New Multi-threaded Slaves - CPU: 2 sockets, 6 cores with hyper-threading, 2930 MHz. OS: 64-bit Oracle Enterprise Linux 6.1 Memory: 48 GB sysbench unit test with multiple schema 빠르다!!! Database 단위.... -_-; Distribution ???
  • 15. INDEX 1. 2. 3. 4. 5. 6. New New New New New New Crash-Safe Slaves Multi-threaded Slaves Time-delayed Replication Optimized Row-based Replication Replication Checksums Global Transactions Identifiers (GTIDs)
  • 16. 3. New Time-delayed Replication mysql> stop slave; Query OK, 0 rows affected (0.04 sec) mysql> CHANGE MASTER TO MASTER_DELAY =60; Query OK, 0 rows affected (0.06 sec) mysql> start slave; Query OK, 0 rows affected, 1 warning (0.06 sec)
  • 17. 3. New Time-delayed Replication mysql> show slave statusG *************************** 1. row *************************** Master_Log_File: mysql-bin.000005 Read_Master_Log_Pos: 2652 Relay_Log_File: db-ha-db2-relay-bin.000002 Relay_Log_Pos: 314 Relay_Master_Log_File: mysql-bin.000005 Slave_IO_Running: Yes Slave_SQL_Running: Yes Exec_Master_Log_Pos: 2396 SQL_Delay: 60 SQL_Remaining_Delay: 33 Slave_SQL_Running_State: Waiting until MASTER_DELAY seconds after master executed event 1 row in set (0.00 sec)
  • 18. 3. New Time-delayed Replication Drop 을 막을 수 있다… 서비스 이용에는... -_-;
  • 19. INDEX 1. 2. 3. 4. 5. 6. New New New New New New Crash-Safe Slaves Multi-threaded Slaves Time-delayed Replication Optimized Row-based Replication Replication Checksums Global Transactions Identifiers (GTIDs)
  • 20. 4. New Optimized Row-based Replication my.cnf binlog_row_image=MINMAL # # # # default FULL full : Log all columns minimal : Log only changed columns, and columns needed to identify rows noblob : Log all columns, except for unneeded BLOB and TEXT columns
  • 21. 4. New Optimized Row-based Replication mysql> reset master; Query OK, 0 rows affected (0.08 sec) mysql> show master status; +------------------+----------+--------------+------------------+-------------------+ | File | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set | +------------------+----------+--------------+------------------+-------------------+ | mysql-bin.000001 | 151 | | | | +------------------+----------+--------------+------------------+-------------------+ 1 row in set (0.00 sec) mysql> show session variables like 'binlog_row_image'; +------------------+-------+ | Variable_name | Value | +------------------+-------+ | binlog_row_image | FULL | +------------------+-------+ 1 row in set (0.00 sec) mysql> update sss set k=10 where id=1; Query OK, 1 row affected (0.01 sec) Rows matched: 1 Changed: 1 Warnings: 0 mysql> show master status; +------------------+----------+--------------+------------------+----------------------------------------+ | File | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set | +------------------+----------+--------------+------------------+----------------------------------------+ | mysql-bin.000001 | 511 | | | c35b769a-8fac-11e2-a667-00a0d1e293e2:1 | +------------------+----------+--------------+------------------+----------------------------------------+ 1 row in set (0.00 sec)
  • 22. 4. New Optimized Row-based Replication mysql> set session binlog_row_image='MINIMAL'; Query OK, 0 rows affected (0.00 sec) mysql> reset master; Query OK, 0 rows affected (0.01 sec) mysql> show master status; +------------------+----------+--------------+------------------+-------------------+ | File | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set | +------------------+----------+--------------+------------------+-------------------+ | mysql-bin.000001 | 151 | | | | +------------------+----------+--------------+------------------+-------------------+ 1 row in set (0.00 sec) mysql> update sss set k=11 where id=1; Query OK, 1 row affected (0.02 sec) Rows matched: 1 Changed: 1 Warnings: 0 mysql> show master status; +------------------+----------+--------------+------------------+----------------------------------------+ | File | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set | +------------------+----------+--------------+------------------+----------------------------------------+ | mysql-bin.000001 | 399 | | | c35b769a-8fac-11e2-a667-00a0d1e293e2:1 | +------------------+----------+--------------+------------------+----------------------------------------+ 1 row in set (0.00 sec)
  • 23. 4. New Optimized Row-based Replication mysql> show session variables like 'binlog_row_image'; +------------------+-------+ | Variable_name | Value | +------------------+-------+ | binlog_row_image | FULL | +------------------+-------+ 1 row in set (0.00 sec)mysql> update sss set k=12 where id=1; Query OK, 1 row affected (0.01 sec) Rows matched: 1 Changed: 1 Warnings: 0 mysql> show session variables like 'binlog_row_image'; +------------------+---------+ | Variable_name | Value | +------------------+---------+ | binlog_row_image | MINIMAL | +------------------+---------+ 1 row in set (0.00 sec)mysql> update sss set k=11 where id=1; Query OK, 1 row affected (0.02 sec) Rows matched: 1 Changed: 1 Warnings: 0 ### UPDATE `ttt`.`sss` ### WHERE ### @1=1 ### @2=11 ### @3='' ### @4='qqqqqqqqqqwwwwwwwwwweeeeeeeeeerrrrrrrrrrtttttttttt ' ### SET ### @1=1 ### @2=12 ### @3='' ### @4='qqqqqqqqqqwwwwwwwwwweeeeeeeeeerrrrrrrrrrtttttttttt ' # at 728 ### UPDATE `ttt`.`sss` ### WHERE ### @1=1 ### SET ### @2=11 # at 368
  • 24. 4. New Optimized Row-based Replication CREATE TABLE `t1` ( `a` int(11) NOT NULL DEFAULT '0', `b` int(11) DEFAULT NULL, `c` char(10) DEFAULT NULL, PRIMARY KEY (`a`) ) update t1 set b=10 where a=1; ### UPDATE `ttt`.`t1` ### WHERE ### @1=1 ### SET ### @2=10 CREATE TABLE `t2` ( `a` int(11) NOT NULL DEFAULT '0', `b` int(11) DEFAULT NULL, `c` char(10) DEFAULT NULL, PRIMARY KEY (`a`), KEY `b` (`b`) ) update t2 set b=10 where b=1; ### UPDATE `ttt`.`t2` ### WHERE ### @1=101 ### SET ### @2=10 CREATE TABLE `t3` ( `a` int(11) DEFAULT NULL, `b` int(11) DEFAULT NULL, `c` char(10) DEFAULT NULL ) update t3 set b=10 where a=1; ### UPDATE `ttt`.`t3` ### WHERE ### @1=1 ### @2=100 ### @3='aaaaa' ### SET ### @2=10
  • 25. 4. New Optimized Row-based Replication 스마트해진 ROW format PK가 필요함 !!!
  • 26. INDEX 1. 2. 3. 4. 5. 6. New New New New New New Crash-Safe Slaves Multi-threaded Slaves Time-delayed Replication Optimized Row-based Replication Replication Checksums Global Transactions Identifiers (GTIDs)
  • 27. 5. New Replication Checksums MASTER SLAVE SQL thread Dump thread I/O thread relay log binary log binlog_checksum Default:CRC32 {NONE|CRC32} master_verify_checksum Default:OFF {0|1} slave_sql_verify_checksum Default:0 {0|1}
  • 28. 5. New Replication Checksums mysql> show binlog events in 'mysql-bin.000007' from 191; +------------------+-----+------------+-----------+-------------+--------------------------------------------------------------------+ | Log_name | Pos | Event_type | Server_id | End_log_pos | Info | +------------------+-----+------------+-----------+-------------+--------------------------------------------------------------------+ | mysql-bin.000007 | 191 | Gtid | 1234 | 239 | SET @@SESSION.GTID_NEXT= 'c35b769a-8fac-11e2-a667-00a0d1e293e2:39' | | mysql-bin.000007 | 239 | Query | 1234 | 316 | BEGIN | | mysql-bin.000007 | 316 | Query | 1234 | 418 | use `ttt`; insert into ttt values (12345) | | mysql-bin.000007 | 418 | Xid | 1234 | 449 | COMMIT /* xid=1053612 */ | +------------------+-----+------------+-----------+-------------+--------------------------------------------------------------------+ 4 rows in set (0.00 sec) Binlog 수정 mysql> show binlog events in 'mysql-bin.000007' from 191; +------------------+-----+------------+-----------+-------------+--------------------------------------------------------------------+ | Log_name | Pos | Event_type | Server_id | End_log_pos | Info | +------------------+-----+------------+-----------+-------------+--------------------------------------------------------------------+ | mysql-bin.000007 | 191 | Gtid | 1234 | 239 | SET @@SESSION.GTID_NEXT= 'c35b769a-8fac-11e2-a667-00a0d1e293e2:39' | | mysql-bin.000007 | 239 | Query | 1234 | 316 | BEGIN | | mysql-bin.000007 | 316 | Query | 1234 | 418 | use `ttt`; insert into ttt values (12341) | | mysql-bin.000007 | 418 | Xid | 1234 | 449 | COMMIT /* xid=1053612 */ | +------------------+-----+------------+-----------+-------------+--------------------------------------------------------------------+ 4 rows in set (0.00 sec) mysql> SET GLOBAL MASTER_VERIFY_CHECKSUM=1; Query OK, 0 rows affected (0.00 sec) mysql> show binlog events in 'mysql-bin.000007' from 191; ERROR 1220 (HY000): Error when executing command SHOW BINLOG EVENTS: Wrong offset or I/O error #130327 20:59:04 server id 1234 use `ttt`/*!*/; SET TIMESTAMP=1364385544/*!*/; insert into ttt values (12645) /*!*/; # at 418 end_log_pos 418 CRC32 0x171597fb Query thread_id=148 exec_time=0 error_code=0
  • 29. 5. New Replication Checksums MASTER SLAVE Dump thread SQL thread I/O thread relay log binary log 장애부분 최소화 느려요~
  • 30. INDEX 1. 2. 3. 4. 5. 6. New New New New New New Crash-Safe Slaves Multi-threaded Slaves Time-delayed Replication Optimized Row-based Replication Replication Checksums Global Transactions Identifiers (GTIDs)
  • 31. 6. New Global Transactions Identifiers (GTIDs) my.cnf log-bin log-slave-updates gtid-mode=ON disable-gtid-unsafe-statements mysql> show master statusG *************************** 1. row *************************** File: mysql-bin.000007 Position: 449 Binlog_Do_DB: Binlog_Ignore_DB: Executed_Gtid_Set: c35b769a-8fac-11e2-a667-00a0d1e293e2:1-39 1 row in set (0.00 sec) mysql> show slave statusG Retrieved_Gtid_Set: c35b769a-8fac-11e2-a667-00a0d1e293e2:38-45 Executed_Gtid_Set: 6873760e-8fb3-11e2-a693-00a0d1e291dc:1-2, c35b769a-8fac-11e2-a667-00a0d1e293e2:1-61152
  • 32. 6. New Global Transactions Identifiers (GTIDs)
  • 33. 6. New Global Transactions Identifiers (GTIDs)
  • 34.