MySQL Multi-Source Replication

Size: px
Start display at page:

Download "MySQL Multi-Source Replication"

Transcription

1 MySQL Multi-Source Replication Max Bubenick - max.bubenick@percona.com Technical Operations Manager Wagner Bianchi - wagner.bianchi@percona.com Principal Technical Services Engineer

2 This is gonna be a multi-source replication walkthrough on MariaDB and Percona Server

3 enables a replication slave to receive transactions from multiple sources/masters simultaneously; aggregate data from multiple servers - Data Mart/Data Warehouse; merge table shards - no auto_increment conflict control; can be carefully used connecting many location on one geo-positioned cluster; centralize all data for backup propose.

4

5

6 No gtid_mode variable to turn on GTID Binary logs has positions and GTIDs CHANGE MASTER TO CHANGE MASTER 'foo' TO CHANGE MASTER TO MASTER_USE_GTID=CURRENT_POS SLAVE_POS Accessed using SHOW ALL SLAVES STATUS; SET works well; set show status like 'Slave_running'; set show status like 'Slave_running'; -- default slave connection -- named connection name

7 box03 box02 On the multi-source slave side: box04 box01 Multi-Source Slave Use SHOW ALL SLAVES STATUS\G Use Use STOP/START ALL SLAVES Use STOP/START SLAVE 'box02' MariaDB [(none)]> pager egrep "Connection Gtid" PAGER set to 'egrep "Connection Seconds"' MariaDB [(none)]> show all slaves status\g Connection_name: box02 Gtid_IO_Pos: ,3-3-1 Gtid_Slave_Pos: ,3-3-1 Connection_name: box03 Gtid_IO_Pos: ,3-3-1 Gtid_Slave_Pos: ,3-3-1 Connection_name: box04 Gtid_IO_Pos: ,3-3-1 Gtid_Slave_Pos: , rows in set (0.00 sec)

8 #: box01 - multi-source slave [client] port=3306 socket=/var/lib/mysql/mysql.sock [mysqld] user=mysql port=3306 socket=/var/lib/mysql/mysql.sock basedir=/usr datadir=/var/lib/mysql read_only=1 #: repl vars server_id=1 report_host=box01 report_port=3306 report_user=repl log_bin=mysql-bin log_bin_index=mysql.index log_slave_updates=true binlog_format=row #: verify checksum on master master_verify_checksum=1 #: gtid vars gtid_domain_id=1 gtid_ignore_duplicates=on gtid_strict_mode=1 #: msr slave parallel mode * box02.slave_parallel_mode=optimistic box03.slave_parallel_mode=optimistic box04.slave_parallel_mode=optimistic #: other slave variables slave_parallel_threads=16 slave_domain_parallel_threads=4 slave_parallel_max_queued=512m slave_net_timeout=15 slave_sql_verify_checksum=1 slave_compressed_protocol=1 #: binary log group commit behavior #binlog_commit_wait_usec= #binlog_commit_wait_count=20

9 gtid_domain_id=3 gtid_domain_id=2 gtid_domain_id=4 #: box01 MariaDB [(none)]> select *************** 1. row *************************** row in set (0.00 sec) #: box02 MariaDB [(none)]> *************** 1. row 2 1 row in set (0.00 sec) #: box03 MariaDB [(none)]> *************** 1. row 3 1 row in set (0.00 sec) box01 Multi-Source Slave gtid_domain_id=1 #: box04 MariaDB [(none)]> *************** 1. row 4 1 row in set (0.00 sec)

10 Make sure the replication user is set on all the servers; Make sure all the servers has unique server_id and gtid_domain_id; #: Connection name with box02 MariaDB [(none)]> change master 'box02' to master_host=' ', master_user='repl', master_use_gtid=current_pos; #: Connection name with box03 MariaDB [(none)]> change master 'box03' to master_host=' ', master_user='repl', master_use_gtid=current_pos; #: Connection name with box04 MariaDB [(none)]> change master 'box04' to master_host=' ', master_user='repl', master_use_gtid=current_pos;

11 # start all slaves MariaDB [(none)]> start all slaves; Query OK, 0 rows affected, 3 warnings (0.02 sec) MariaDB [(none)]> show warnings; Level Code Message Note 1937 SLAVE 'box04' started Note 1937 SLAVE 'box03' started Note 1937 SLAVE 'box02' started rows in set (0.00 sec) MariaDB [(none)]> stop all slaves; Query OK, 0 rows affected, 3 warnings (0.02 sec)

12 #: setting the MariaDB [(none)]> set Query OK, 0 rows affected (0.00 sec) #: showing some box02 Connection name's status replication variables MariaDB [(none)]> pager egrep "Slave_IO_State Using_Gtid Gtid_IO_Pos" PAGER set to 'egrep "Slave_IO_State Using_Gtid Gtid_IO_Pos"' MariaDB [(none)]> show slave status\g Slave_IO_State: Waiting for master to send event Using_Gtid: Current_Pos Gtid_IO_Pos: ,2-2-1, row in set (0.00 sec) #: starting and stopping just box02, as set MariaDB [(none)]> stop slave; Query OK, 0 rows affected (0.01 sec) MariaDB [(none)]> start slave; Query OK, 0 rows affected (0.02 sec)

13 #: relay logs - one group -rw-rw mysql mysql -rw-rw mysql mysql -rw-rw mysql mysql -rw-rw mysql mysql -rw-rw mysql mysql -rw-rw mysql mysql -rw-rw mysql mysql -rw-rw mysql mysql -rw-rw mysql mysql for each set connection name - host+relay-bin+connection_name Mar 23 00:32 maria01-relay-bin-box Mar 23 00:32 maria01-relay-bin-box Mar 23 00:32 maria01-relay-bin-box02.index Mar 23 00:32 maria01-relay-bin-box Mar 23 00:32 maria01-relay-bin-box Mar 23 00:32 maria01-relay-bin-box03.index Mar 23 00:32 maria01-relay-bin-box Mar 23 00:32 maria01-relay-bin-box Mar 23 00:32 maria01-relay-bin-box04.index #: master.info - one per set connection name - master-connection_name.info -rw-rw mysql mysql 153 Mar 23 00:32 master-box02.info -rw-rw mysql mysql 153 Mar 23 00:32 master-box03.info -rw-rw mysql mysql 153 Mar 23 00:32 master-box04.info #: multi-master.info file, listing all set connections names -rw-rw mysql mysql 18 Feb 15 11:00 multi-master.info [root@maria01 mysql]# cat multi-master.info #: don't edit this file :) box02 box03 box04

14 #: check gtid_current and gtid_slave pos variables MariaDB [mysql]> select *************************** 1. row *************************** ,2-2-1, ,2-2-1, row in set (0.00 sec) #: check current clave current and slave pos from mysql.gtid_slave_pos table MariaDB [mysql]> select * from mysql.gtid_slave_pos; domain_id sub_id server_id seq_no rows in set (0.00 sec)

15 #: checking global variable MariaDB [(none)]> SELECT *************************** 1. row *************************** , , , help keeping binlogs identical across multiple servers 1 row in set (0.00 sec) CHANGE MASTER 'foo' TO

16 TO CHANGE MASTER CHANGE MASTER 'foo' TO MASTER_USE_GTID=SLAVE_POS; #: checking global variable MariaDB [(none)]> SELECT *************************** 1. row *************************** , , , row in set (0.00 sec) #: checking global (can't be set per Connection Name) MariaDB [(none)]> SET GLOBAL GTID_SLAVE_POS='1-1-66, , , '; Query OK, 0 rows affected, 3 warnings (0.01 sec) #: SHOULD BE DONE AFTER STOPPING REPLICATION CONNECTION NAMES...

17 #: comparing both and MariaDB [(none)]> SELECT *************************** 1. row *************************** , , , ADDITIONAL , , , row in set (0.00 sec) #: setting - TRANSACTIONS CANNOT BE REPLAYED MariaDB [(none)]> SET GLOBAL GTID_SLAVE_POS='1-1-66, , , '; ERROR 1947 (HY000): Specified GTID conflicts with the binary log which contains a more recent GTID If MASTER_GTID_POS=CURRENT_POS is used, the binlog position will override the new value #: command above was embraced by START/STOP ALL SLAVES.

18 slave_parallel_threads sets the number of threads will take care about the updates on relay logs based on their timestamps;

19 #: making a multi-source slave multi-threaded MariaDB [(none)]> stop all slaves; Query OK, 0 rows affected, 3 warnings (0.00 sec) MariaDB [(none)]> set global slave_parallel_threads=12; Query OK, 0 rows affected (0.00 sec) MariaDB [(none)]> set global slave_domain_parallel_threads=4; Query OK, 0 rows affected (0.00 sec) MariaDB [(none)]> start all slaves; Query OK, 0 rows affected, 3 warnings (0.03 sec) MariaDB [(none)]> *************************** 1. row optimistic # will retry transaction in case of parallelism 12 # total of threads available for slave to execute relay 4 # minimum # of thread used for a domain_id all time 1 row in set (0.00 sec)

20 #: making a multi-source slave multi-threaded MariaDB [(none)]> SELECT ID,TIME,STATE,USER FROM INFORMATION_SCHEMA.PROCESSLIST WHERE USER='system user'; ID TIME STATE USER Waiting for master to send event system user Slave has read all relay log; waiting for the slave I/O thread t system user Waiting for master to send event system user Slave has read all relay log; waiting for the slave I/O thread t system user Slave has read all relay log; waiting for the slave I/O thread t system user Waiting for master to send event system user Waiting for work from SQL thread system user Waiting for work from SQL thread system user 10 0 Update_rows_log_event::ha_update_row(-1) system user 9 0 Unlocking tables system user Waiting for work from SQL thread system user Waiting for work from SQL thread system user 6 0 Update_rows_log_event::ha_update_row(-1) system user 5 0 Update_rows_log_event::ha_update_row(-1) system user 4 0 Update_rows_log_event::ha_update_row(-1) system user 3 0 Update_rows_log_event::ha_update_row(-1) system user rows in set (0.07 sec)

21 binlog_commit_wait_usec= binlog_commit_wait_count=20 #: binary logs for group commit mysql]# mysqlbinlog mysql-bin vvvv egrep "cid=353579" # :37:27 server id 2 end_log_pos GTID cid= # :37:27 server id 2 end_log_pos GTID cid= # :37:27 server id 2 end_log_pos GTID cid= # :37:27 server id 2 end_log_pos GTID cid= # :37:27 server id 2 end_log_pos GTID cid= # :37:27 server id 2 end_log_pos GTID cid= trans trans trans trans trans trans MariaDB [(none)]> show global status where variable_name in ('Binlog_commits','Binlog_group_commits'); Variable_name Value Binlog_commits the bigger the difference between the two variables Binlog_group_commits 5523 the bigger the apparent group commit efficiency rows in set (0.02 sec)

22

23 One can restart both threads or just SQL_THREAD; #: adding new schema to box02 box02> set sql_log_bin=0; create database if not exists box02_new; set sql_log_bin=1; Query OK, 0 rows affected (0.00 sec) Query OK, 1 row affected (0.01 sec) Query OK, 0 rows affected (0.00 sec) #: adding filters on multi-source slave box01> stop slave 'box02'; set global box02.replicate_ignore_db='box02_new'; start slave 'box02'; Query OK, 0 rows affected (0.00 sec) Query OK, 0 rows affected (0.00 sec) Query OK, 0 rows affected (0.00 sec) #: remove filter box01> stop slave; set global box02.replicate_ignore_db=''; start slave; Query OK, 0 rows affected (0.01 sec) Query OK, 0 rows affected (0.00 sec) Query OK, 0 rows affected (0.11 sec)

24 sql_slave_skip_counter If parallel replication is enabled: MariaDB [box02]> set default_master_connection='box02'; set global sql_slave_skip_counter=1; Query OK, 0 rows affected (0.00 sec) ERROR 1966 (HY000): When using parallel replication and GTID with multiple replication can not be used. Instead, explicitly can be used to skip to after a given GTID position. Stop all slaves, turn off the parallel replication and skip_counter; Set a new value MariaDB [box02]> stop all slaves; , , '; Query OK, 0 rows affected, 3 warnings (0.00 sec) Query OK, 0 rows affected (0.01 sec) MariaDB [box02]> start all slaves; Query OK, 0 rows affected, 3 warnings (0.01 sec)

25

26 gtid_mode=on PERFORMANCE_SCHEMA SHOW SLAVE STATUS SHOW SLAVE STATUS FOR CHANNEL mysql> pager egrep "Slave_IO Channel" PAGER set to 'egrep "Slave_IO Channel"' mysql> show slave status\g Slave_IO_State: Waiting for master to send event Slave_IO_Running: Yes Channel_Name: box02 Slave_IO_State: Waiting for master to send event Slave_IO_Running: Yes Channel_Name: box03 Slave_IO_State: Waiting for master to send event Slave_IO_Running: Yes Channel_Name: box04 3 rows in set (0.00 sec)

27 box03 box02 box04 box01 Multi-Source Slave #: multi-source slave configuration file [mysqld] datadir=/var/lib/mysql socket=/var/lib/mysql/mysql.sock user=mysql report_host=box01 report_port=3306 report_user=repl #: gtid configuration server_id=1 gtid_mode=on log_bin=mysql-bin log_bin_index=mysql-bin.index log_slave_updates=true enforce_gtid_consistency #: binary logs (GROUP COMMIT) binlog_group_commit_sync_delay= binlog_group_commit_sync_no_delay_cont=20 #binlog_order_commits=0 # increase parallelism #: repositories for crash-safe master_info_repository=table relay_log_info_repository=table #: slave configs slave_parallel_workers=4 slave_parallel_type='logical_clock' slave_compressed_protocol=1 slave_pending_jobs_size_max=256m

28 #: Replication Channel for box02 box01> change master to master_host=' ', master_user='repl', master_auto_position=1 for channel 'box02'; #: Replication Channel for box03 box01> change master to master_host=' ', master_user='repl', master_auto_position=1 for channel 'box03'; #: Replication Channel for box04 box01> change master to master_host=' ', master_user='repl', master_auto_position=1 for channel 'box04';

29 #: relay logs - one group -rw-r mysql mysql -rw-r mysql mysql -rw-r mysql mysql -rw-r mysql mysql -rw-r mysql mysql -rw-r mysql mysql -rw-r mysql mysql -rw-r mysql mysql -rw-r mysql mysql for each set connection name Mar 27 00:51 percona01-relay-bin-box Mar 27 00:51 percona01-relay-bin-box Mar 27 00:51 percona01-relay-bin-box02.index Mar 27 00:51 percona01-relay-bin-box Mar 27 00:51 percona01-relay-bin-box Mar 27 00:51 percona01-relay-bin-box03.index Mar 27 00:51 percona01-relay-bin-box Mar 27 00:51 percona01-relay-bin-box Mar 27 00:51 percona01-relay-bin-box04.index #:No master.info file as it needs to be configured with crash-safe, repos as TABLE mysql> show variables where variable_name in ('master_info_repository','relay_log_info_repository'); Variable_name Value master_info_repository TABLE relay_log_info_repository TABLE rows in set (0.00 sec)

30 #: stopping mysql> stop Query OK, 0 mysql> show all slaves slave; rows affected (0.06 sec) slave status\g Slave_IO_Running: No Slave_SQL_Running: No [...snip...] 3 rows in set (0.00 sec) #: stopping just one specific slave mysql> stop slave for channel 'box02'; Query OK, 0 rows affected (0.01 sec) mysql> show slave status for channel 'box02'\g Slave_IO_Running: No Slave_SQL_Running: No Slave_SQL_Running_State: 1 row in set (0.00 sec)

31 #: starting all slaves mysql> start slave; Query OK, 0 rows affected (0.06 sec) mysql> show slave status\g Slave_IO_Running: Yes Slave_SQL_Running: Yes [...snip...] 3 rows in set (0.00 sec) #: starting just one specific slave mysql> start slave for channel 'box02'; Query OK, 0 rows affected (0.01 sec) mysql> show slave status for channel 'box02'\g Slave_IO_Running: No Slave_SQL_Running: No Slave_SQL_Running_State: 1 row in set (0.00 sec)

32 #: show all slaves status mysql> show slave status\g Channel_Name: box02 Channel_Name: box03 Channel_Name: box04 3 rows in set (0.00 sec) #: show slave status for a specific slave mysql> show slave status for channel 'box02'\g Slave_IO_State: Waiting for master to send event Retrieved_Gtid_Set: 61be13a1-d574-11e5-83c fb806: Executed_Gtid_Set: 4bd77dee-d572-11e5-b09f fb806: Channel_Name: box02 1 row in set (0.00 sec)

33 #: PERFORMANCE_SCHEMA replication tables mysql> show tables from performance_schema like 'replication%'; Tables_in_performance_schema (replication%) replication_applier_configuration replication_applier_status replication_applier_status_by_coordinator replication_applier_status_by_worker replication_connection_configuration replication_connection_status replication_group_member_stats replication_group_members rows in set (0.00 sec)

34 #: PERFORMANCE_SCHEMA replication tables mysql> select channel_name,service_state,last_heartbeat_timestamp -> from performance_schema.replication_connection_status\g *************************** 1. row *************************** channel_name: box02 service_state: ON last_heartbeat_timestamp: :22:39 *************************** 2. row *************************** channel_name: box03 service_state: ON last_heartbeat_timestamp: :22:30 *************************** 3. row *************************** channel_name: box04 service_state: ON last_heartbeat_timestamp: :22:31 3 rows in set (0.00 sec)

35 mysql> select LOGICAL_CLOCK row in set (0.00 sec) #: PERFORMANCE_SCHEMA, checking coordinators state (multi-threaded slaves) mysql> select channel_name, service_state -> from performance_schema.replication_applier_status_by_coordinator\g *************************** 1. row *************************** channel_name: box02 service_state: ON *************************** 2. row *************************** channel_name: box03 service_state: ON *************************** 3. row *************************** channel_name: box04 service_state: ON 3 rows in set (0.00 sec)

36 #: PERFORMANCE_SCHEMA, checking coordinators state (multi-threaded slaves) mysql> select channel_name,thread_id,service_state,last_seen_transaction -> from performance_schema.replication_applier_status_by_worker -> where last_seen_transaction<>''\g *************************** 1. row *************************** channel_name: box03 thread_id: 71 service_state: ON last_seen_transaction: ab d573-11e5-bc fb806:2536 *************************** 2. row *************************** channel_name: box03 thread_id: 72 service_state: ON last_seen_transaction: ab d573-11e5-bc fb806:2537 *************************** 3. row *************************** channel_name: box03 thread_id: 73 service_state: ON last_seen_transaction: ab d573-11e5-bc fb806:

37 CHANGE REPLICATION FILTER #: adding new schema to box02 box02> set sql_log_bin=0; create database if not exists box02_new; set sql_log_bin=1; Query OK, 0 rows affected (0.00 sec) Query OK, 1 row affected (0.01 sec) Query OK, 0 rows affected (0.00 sec) #: adding filters on multi-source slave mysql> stop slave; change replication filter replicate_ignore_db=(box02_new); start slave; Query OK, 0 rows affected (0.01 sec) Query OK, 0 rows affected (0.00 sec) Query OK, 0 rows affected (0.11 sec) #: remove filter mysql> stop slave; change Query OK, 0 rows affected Query OK, 0 rows affected Query OK, 0 rows affected replication filter replicate_ignore_db=(); start slave; (0.01 sec) (0.00 sec) (0.11 sec)

38 REPLICATE_DO_DB REPLICATE_IGNORE_DB REPLICATE_DO_TABLE REPLICATE_IGNORE_TABLE REPLICATE_WILD_DO_TABLE REPLICATE_WILD_IGNORE_TABLE REPLICATE_REWRITE_DB

39 REPLICATE_REWRITE_DB #: rewriting updates on db A to db B box01> stop slave; change replication filter replicate_rewrite_db=((box02,box03)); start slave; Query OK, 0 rows affected (0.00 sec) Query OK, 0 rows affected (0.00 sec) Query OK, 0 rows affected (0.07 sec) #: writing some data to A to be routed to B box02> insert into box02.t1 set i=10; Query OK, 1 row affected (1.01 sec) #: checking data on A box01> select * from box02.t1; Empty set (0.00 sec) #: checking data on B box01> select * from box03.t1\g *************************** 1. row *************************** i: 10 1 row in set (0.00 sec) #: remove filter box01> stop slave; change Query OK, 0 rows affected Query OK, 0 rows affected Query OK, 0 rows affected replication filter replicate_rewrite_db=(); start slave; (0.01 sec) (0.00 sec) (0.12 sec)

40 box01> SELECT -> FROM INFORMATION_SCHEMA.PROCESSLIST WHERE USER='system user'; ID USER STATE TIME INFO box01 32 system user Waiting for an event from Coordinator 721 NULL box01 33 system user Waiting for an event from Coordinator 721 NULL box01 34 system user Waiting for an event from Coordinator 721 NULL box01 35 system user Waiting for an event from Coordinator 721 NULL box01 36 system user Waiting for an event from Coordinator 721 NULL box01 25 system user Waiting for an event from Coordinator 721 NULL box01 26 system user Waiting for an event from Coordinator 721 NULL box01 27 system user Waiting for master to send event 721 NULL [...snip...] rows in set (0.00 sec)

41 UUID() mysql> select * from performance_schema.replication_applier_status_by_worker\g *************************** 1. row *************************** CHANNEL_NAME: box02 WORKER_ID: 1 THREAD_ID: NULL SERVICE_STATE: OFF LAST_SEEN_TRANSACTION: fa11b361-d572-11e5-b63e fb806:66 LAST_ERROR_NUMBER: 1062 LAST_ERROR_MESSAGE: Worker 0 failed executing transaction fa11b361-d572-11e5-b63e' fb806:66' at master log mysql-bin , end_log_pos 793; Could not execute Write_rows event on table box02.t1; Duplicate entry '1' for key 'PRIMARY', Error_code: 1062; handler error HA_ERR_FOUND_DUPP_KEY; the event's master log mysql-bin , end_log_pos 793 LAST_ERROR_TIMESTAMP: :18:14 mysql> stop commit; set Query OK, 0 Query OK, 0 Query OK, 0 Query OK, 0 slave for channel 'box02'; set gtid_next=' fa11b361-d572-11e5-b63e fb806:66'; begin; gtid_next=automatic; start slave for channel 'box02'; rows affected (0.00 sec) rows affected (1.01 sec) rows affected (0.00 sec) rows affected (0.02 sec)

42 Feature Multi-Source Slave Creation Parallel Threads Replication Filters Skip Replication Errors Possible number of sources/masters MariaDB MySQL 5.7 CHANGE MASTER 'name' TO...; CHANGE MASTER TO FOR CHANNEL 'name'; slave_parallel_mode=optimistic slave_parallel_threads=16 # ALL slave_domain_parallel_threads=4 slave_parallel_max_queued=512m slave_parallel_workers=4 # per RC slave_parallel_type='logical_clock' slave_pending_jobs_size_max=256m set global box02. replicate_ignore_db='foo'; SET GLOBAL GTID_SLAVE_POS='1-1-66'; SET GLOBAL slave_exec_mode='idempotent'; SET GLOBAL sql_slave_skip_counter=1; You can for now only have 64 masters CHANGE REPLICATION FILTER... SET GLOBAL slave_exec_mode='idempotent'; SET GTID_NEXT='UUID:TRX_ID' SET GLOBAL sql_slave_skip_counter=1; start slave for channel 'xxxx'; (NO GTID) 256 replication channels for any combination of hostname and port

43

MySQL Replication, the Community Sceptic Roundup. Giuseppe Maxia Quality Assurance Architect at

MySQL Replication, the Community Sceptic Roundup. Giuseppe Maxia Quality Assurance Architect at MySQL Replication, the Community Sceptic Roundup Giuseppe Maxia Quality Assurance Architect at VMware @datacharmer 1 About me Who s this guy? Giuseppe Maxia, a.k.a. "The Data Charmer" QA Architect at VMware

More information

What's new in MySQL 5.5 and 5.6 replication

What's new in MySQL 5.5 and 5.6 replication What's new in MySQL 5.5 and 5.6 replication Giuseppe Maxia Continuent, Inc Continuent 2012. 1 AGENDA 5.5 semi-synchronous replication 5.6 delayed replication server UUID crash-safe slave multi-thread slave

More information

MySQL GTID Implementation, Maintenance, and Best Practices. Brian Cain (Dropbox) Gillian Gunson (GitHub) Mark Filipi (SurveyMonkey)

MySQL GTID Implementation, Maintenance, and Best Practices. Brian Cain (Dropbox) Gillian Gunson (GitHub) Mark Filipi (SurveyMonkey) MySQL GTID Implementation, Maintenance, and Best Practices Brian Cain (Dropbox) Gillian Gunson (GitHub) Mark Filipi (SurveyMonkey) Agenda Intros Concepts Replication overview GTID Intro Implementation

More information

MySQL 5.6 New Replication Features

MySQL 5.6 New Replication Features disclaimer MySQL 5.6 New Replication Features Ronald Bradford New York & Boston March 2012 The presentation provides information that is publicly available for MySQL 5.6 GA. The content of this presentation

More information

MySQL Group Replication in a nutshell

MySQL Group Replication in a nutshell 1 / 192 2 / 192 MySQL Group Replication in a nutshell MySQL InnoDB Cluster: hands-on tutorial Percona Live Amsterdam - October 2016 Frédéric Descamps - MySQL Community Manager - Oracle Kenny Gryp - MySQL

More information

The Exciting MySQL 5.7 Replication Enhancements

The Exciting MySQL 5.7 Replication Enhancements The Exciting MySQL 5.7 Replication Enhancements Luís Soares (luis.soares@oracle.com) Principal Software Engineer, MySQL Replication Team Lead Copyright 2016, Oracle and/or its affiliates. All rights reserved.

More information

Diagnosing Failures in MySQL Replication

Diagnosing Failures in MySQL Replication Diagnosing Failures in MySQL Replication O'Reilly MySQL Conference Santa Clara, CA Devananda Deva van der Veen -2- Introduction About Me Sr Consultant at Percona since summer 2009 Working with large MySQL

More information

MySQL Replication : advanced features in all flavours. Giuseppe Maxia Quality Assurance Architect at

MySQL Replication : advanced features in all flavours. Giuseppe Maxia Quality Assurance Architect at MySQL Replication : advanced features in all flavours Giuseppe Maxia Quality Assurance Architect at VMware @datacharmer 1 About me Who s this guy? Giuseppe Maxia, a.k.a. "The Data Charmer" QA Architect

More information

How To Repair MySQL Replication

How To Repair MySQL Replication By Falko Timme Published: 2008-06-06 13:10 How To Repair MySQL Replication Version 1.0 Author: Falko Timme Last edited 05/29/2008 If you have set up MySQL replication, you

More information

Introduction To MySQL Replication. Kenny Gryp Percona Live Washington DC /

Introduction To MySQL Replication. Kenny Gryp Percona Live Washington DC / Introduction To MySQL Replication Kenny Gryp Percona Live Washington DC / 2012-01-11 MySQL Replication Replication Overview Binary Logs Setting Up Replication Commands Other Common

More information

MySQL Point-in-Time Recovery like a Rockstar

MySQL Point-in-Time Recovery like a Rockstar 1 / 51 2 / 51 3 / 51 MySQL Point-in-Time Recovery like a Rockstar Accelerate MySQL point-in-time recovery for large workloads FOSDEM, February 2018 Frédéric Descamps - MySQL Community Manager - Oracle

More information

MySQL InnoDB Cluster & Group Replication in a Nutshell: Hands-On Tutorial

MySQL InnoDB Cluster & Group Replication in a Nutshell: Hands-On Tutorial 1 / 152 2 / 152 3 / 152 MySQL InnoDB Cluster & Group Replication in a Nutshell: Hands-On Tutorial Percona Live Europe 2017 - Dublin Frédéric Descamps - MySQL Community Manager - Oracle Kenny Gryp - MySQL

More information

Setting up Multi-Source Replication in MariaDB 10.0

Setting up Multi-Source Replication in MariaDB 10.0 Setting up Multi-Source Replication in MariaDB 10.0 November 3, 2014 Derek Downey MySQL Principal Consultant Who am I? Web Developer and Sysadmin background MySQL DBA for 10+ years MySQL Principal Consultant

More information

MySQL InnoDB Cluster & Group Replication in a Nutshell: Hands-On Tutorial

MySQL InnoDB Cluster & Group Replication in a Nutshell: Hands-On Tutorial 1 / 284 2 / 284 3 / 284 MySQL InnoDB Cluster & Group Replication in a Nutshell: Hands-On Tutorial Percona Live 2017 - Santa Clara Frédéric Descamps - MySQL Community Manager - Oracle Kenny Gryp - MySQL

More information

Riding the Binlog: an in Deep Dissection of the Replication Stream. Jean-François Gagné jeanfrancois DOT gagne AT booking.com

Riding the Binlog: an in Deep Dissection of the Replication Stream. Jean-François Gagné jeanfrancois DOT gagne AT booking.com Riding the Binlog: an in Deep Dissection of the Replication Stream Jean-François Gagné jeanfrancois DOT gagne AT booking.com Presented at Percona Live Amsterdam 2015 Booking.com 1 Booking.com Based in

More information

Oracle Exam 1z0-883 MySQL 5.6 Database Administrator Version: 8.0 [ Total Questions: 100 ]

Oracle Exam 1z0-883 MySQL 5.6 Database Administrator Version: 8.0 [ Total Questions: 100 ] s@lm@n Oracle Exam 1z0-883 MySQL 5.6 Database Administrator Version: 8.0 [ Total Questions: 100 ] Oracle 1z0-883 : Practice Test Question No : 1 Consider the Mysql Enterprise Audit plugin. You are checking

More information

Setting Up Master-Master Replication With MySQL 5 On Debian Etch

Setting Up Master-Master Replication With MySQL 5 On Debian Etch By Falko Timme Published: 2007-10-23 18:03 Setting Up Master-Master Replication With MySQL 5 On Debian Etch Version 1.0 Author: Falko Timme Last edited 10/15/2007 Since version

More information

Replication features of 2011

Replication features of 2011 FOSDEM 2012 Replication features of 2011 What they were How to get them How to use them Sergey Petrunya MariaDB MySQL Replication in 2011: overview Notable events, chronologically: MySQL 5.5 GA (Dec 2010)

More information

MySQL Replication: Latest Developments

MySQL Replication: Latest Developments MySQL Replication: Latest Developments Luís Soares (luis.soares@oracle.com) Principal Software Engineer, MySQL Replication Technologies Lead 1 Safe Harbor Statement The following is intended to outline

More information

MySQL Real Time Single DB Replication & SSL Encryption on CENTOS 6.3

MySQL Real Time Single DB Replication & SSL Encryption on CENTOS 6.3 Alternate Titles: MYSQL SSL Encryption Based Replication Setup Author: Muhammad Zeeshan Bhatti [LPI, VCP, OCP (DBA), MCSA, SUSE CLA,] (http://zeeshanbhatti.com) (admin@zeeshanbhatti.com) MySQL Real Time

More information

The New Replication Features in MySQL 8. Luís Soares Principal Software Engineer, MySQL Replication Lead

The New Replication Features in MySQL 8. Luís Soares Principal Software Engineer, MySQL Replication Lead The New Replication Features in MySQL 8 Luís Soares (luis.soares@oracle.com) Principal Software Engineer, MySQL Replication Lead Copyright 2017, Oracle and/or its affiliates. All rights reserved. Percona

More information

replic8 The Eighth Generation of MySQL Replication Sven Sandberg MySQL Replication Core Team Lead

replic8 The Eighth Generation of MySQL Replication Sven Sandberg MySQL Replication Core Team Lead replic8 The Eighth Generation of MySQL Replication Sven Sandberg (sven.sandberg@oracle.com) MySQL Replication Core Team Lead Safe Harbour Statement The following is intended to outline our general product

More information

How Facebook Got Consistency with MySQL in the Cloud Sam Dunster

How Facebook Got Consistency with MySQL in the Cloud Sam Dunster How Facebook Got Consistency with MySQL in the Cloud Sam Dunster Production Engineer Consistency Replication Replication for High Availability Facebook Replicaset Region A Slave Slave Region B Region

More information

Backup and Recovery Strategy

Backup and Recovery Strategy Backup and Recovery Strategy About Stacy 10+ years of experience on various flavors of relational databases. Focus on performance tuning, code reviews, database deployment and infrastructure management

More information

EXPERIENCES USING GH-OST IN A MULTI-TIER TOPOLOGY

EXPERIENCES USING GH-OST IN A MULTI-TIER TOPOLOGY EXPERIENCES USING GH-OST IN A MULTI-TIER TOPOLOGY Ivan Groenewold Valerie Parham-Thompson 26 April 2017 WHY USE GH-OST? Why not use native online schema change capabilities of MySQL/MariaDB? Some changes

More information

MySQL Group Replication. Bogdan Kecman MySQL Principal Technical Engineer

MySQL Group Replication. Bogdan Kecman MySQL Principal Technical Engineer MySQL Group Replication Bogdan Kecman MySQL Principal Technical Engineer Bogdan.Kecman@oracle.com 1 Safe Harbor Statement The following is intended to outline our general product direction. It is intended

More information

Operational DBA In a Nutshell - HandsOn Reference Guide

Operational DBA In a Nutshell - HandsOn Reference Guide 1/12 Operational DBA In a Nutshell - HandsOn Reference Guide Contents 1 Operational DBA In a Nutshell 2 2 Installation of MySQL 2 2.1 Setting Up Our VM........................................ 2 2.2 Installation

More information

MySQL Replication. Rick Golba and Stephane Combaudon April 15, 2015

MySQL Replication. Rick Golba and Stephane Combaudon April 15, 2015 MySQL Replication Rick Golba and Stephane Combaudon April 15, 2015 Agenda What is, and what is not, MySQL Replication Replication Use Cases Types of replication Replication lag Replication errors Replication

More information

2) One of the most common question clients asks is HOW the Replication works?

2) One of the most common question clients asks is HOW the Replication works? Replication =============================================================== 1) Before setting up a replication, it could be important to have a clear idea on the why you are setting up a MySQL replication.

More information

Consistent Reads Using ProxySQL and GTID. Santa Clara, California April 23th 25th, 2018

Consistent Reads Using ProxySQL and GTID. Santa Clara, California April 23th 25th, 2018 Consistent Reads Using ProxySQL and GTID Santa Clara, California April 23th 25th, 2018 Disclaimer I am not René Cannaò @lefred MySQL Community Manager / Oracle the one who provided a hint for this not

More information

MyRocks Storage Engine Status Update. Sergei Petrunia MariaDB Meetup New York February, 2018

MyRocks Storage Engine Status Update. Sergei Petrunia MariaDB Meetup New York February, 2018 MyRocks Storage Engine Status Update Sergei Petrunia MariaDB Meetup New York February, 2018 2 Plan What MyRocks is How it is provided in upstream Packaging MyRocks in MariaDB MyRocks

More information

Support for replication is built into MySQL. There are no special add-ins or applications to install.

Support for replication is built into MySQL. There are no special add-ins or applications to install. Updates made to one database copy are automatically propagated to all the other replicas. Generally, one of the replicas is designated as the master where Updates are directed to the master while read

More information

MySQL Performance Schema in Action. April, 23, 2018 Sveta Smirnova, Alexander Rubin

MySQL Performance Schema in Action. April, 23, 2018 Sveta Smirnova, Alexander Rubin MySQL Performance Schema in Action April, 23, 2018 Sveta Smirnova, Alexander Rubin Table of Contents Performance Schema Configuration 5.6+: Statements Instrumentation 5.7+: Prepared Statements 5.7+: Stored

More information

MySQL Replication Advanced Features In 20 minutes

MySQL Replication Advanced Features In 20 minutes MySQL Replication Advanced Features In 20 minutes Peter Zaitsev, CEO FOSDEM, Brussels, Belgium February 2nd, 2019 1 Question #1 Who in this room is using some kind of MySQL Replication? 2 Question #2 Which

More information

Backup & Restore. Maximiliano Bubenick Sr Remote DBA

Backup & Restore. Maximiliano Bubenick Sr Remote DBA Backup & Restore Maximiliano Bubenick Sr Remote DBA Agenda Why backups? Backup Types Raw Backups Logical Backups Binlog mirroring Backups Locks Tips Why Backups? Why Backups? At some point something will

More information

State of MySQL Group Replication

State of MySQL Group Replication State of MySQL Group Replication Nuno Carvalho (nuno.carvalho@oracle.com) Principal Software Engineer, MySQL Replication Service Team Lead Tuesday, September 22, 2015 Copyright 2015, Oracle and/or its

More information

The Hazards of Multi-writing in a Dual-Master Setup

The Hazards of Multi-writing in a Dual-Master Setup The Hazards of Multi-writing in a Dual-Master Setup Jay Janssen MySQL Consulting Lead November 15th, 2012 Explaining the Problem Rules of the Replication Road A given MySQL instance: Can be both a master

More information

How to evaluate which MySQL High Availability solution best suits you

How to evaluate which MySQL High Availability solution best suits you How to evaluate which MySQL High Availability solution best suits you Henrik Ingo & Ben Mildren MySQL Conference And Expo, 2012 Please share and reuse this presentation licensed under the Creative Commons

More information

<Insert Picture Here> MySQL: Replication

<Insert Picture Here> MySQL: Replication MySQL: Replication Keith Larson keith.larson@oracle.com MySQL Community Manager sqlhjalp.blogspot.com sqlhjalp.com/pdf/2012_scale_replication.pdf Safe Harbor Statement The following

More information

Everything You Need to Know About MySQL Group Replication

Everything You Need to Know About MySQL Group Replication Everything You Need to Know About MySQL Group Replication Luís Soares (luis.soares@oracle.com) Principal Software Engineer, MySQL Replication Lead Copyright 2017, Oracle and/or its affiliates. All rights

More information

MyRocks in MariaDB. Sergei Petrunia MariaDB Tampere Meetup June 2018

MyRocks in MariaDB. Sergei Petrunia MariaDB Tampere Meetup June 2018 MyRocks in MariaDB Sergei Petrunia MariaDB Tampere Meetup June 2018 2 What is MyRocks Hopefully everybody knows by now A storage engine based on RocksDB LSM-architecture Uses less

More information

1.mysql. 2.databasetable. 3.usergrant. 4.cnf. 6.Mysql. 9.mysqlNoSql. 10.MySQL MinDoc

1.mysql. 2.databasetable. 3.usergrant. 4.cnf. 6.Mysql. 9.mysqlNoSql. 10.MySQL MinDoc 1.mysql databasetable 3.usergrant 4.cnf 5. 6.Mysql 7. 8. 9.mysqlNoSql 10.MySQL - 1 - 1.mysql 1.mysql mysqlmysql mysql 1MySQL12:00 29drop 3binlog 1sqlCHANGE MASTERbinlogbinlog 2mysqlbinlogbinlogsqldrop

More information

MySQL Test Framework for Troubleshooting. February, 04, 2018 Sveta Smirnova

MySQL Test Framework for Troubleshooting. February, 04, 2018 Sveta Smirnova MySQL Test Framework for Troubleshooting February, 04, 2018 Sveta Smirnova What my Family Thinks I Do 2 What my Boss Thinks I Do 3 What I Really Do 4 I Investigate Why customer s SQL works wrongly 5 I

More information

MySQL Replication Tips and Tricks

MySQL Replication Tips and Tricks 2009-04-23 Lars Thalmann & Mats Kindahl Replication Tricks and Tips AB 2007-9 www.mysql.com 1 Replication Tips and Tricks Dr. Mats Kindahl Lead Developer, Replication mats@sun.com mysqlmusings.blogspot.com

More information

XA Transactions in MySQL

XA Transactions in MySQL XA Transactions in MySQL An overview and troubleshooting guide to distributed transactions Dov Endress Senior MySQL DBA July 25th 2018 1 2016 Percona ACID Compliant Distributed Transactions Distributed

More information

High Availability Using MySQL Group Replication

High Availability Using MySQL Group Replication High Availability Using MySQL Group Replication Luís Soares (luis.soares@oracle.com) Principal Software Engineer 1 Safe Harbor Statement The following is intended to outline our general product direction.

More information

What s new in Percona Xtradb Cluster 5.6. Jay Janssen Lead Consultant February 5th, 2014

What s new in Percona Xtradb Cluster 5.6. Jay Janssen Lead Consultant February 5th, 2014 What s new in Percona Xtradb Cluster 5.6 Jay Janssen Lead Consultant February 5th, 2014 Overview PXC 5.6 is the aggregation of Percona Server 5.6 Codership MySQL 5.6 patches Galera 3.x Agenda Major new

More information

MySQL HA Solutions Selecting the best approach to protect access to your data

MySQL HA Solutions Selecting the best approach to protect access to your data MySQL HA Solutions Selecting the best approach to protect access to your data Sastry Vedantam sastry.vedantam@oracle.com February 2015 Copyright 2015, Oracle and/or its affiliates. All rights reserved

More information

MySQL usage of web applications from 1 user to 100 million. Peter Boros RAMP conference 2013

MySQL usage of web applications from 1 user to 100 million. Peter Boros RAMP conference 2013 MySQL usage of web applications from 1 user to 100 million Peter Boros RAMP conference 2013 Why MySQL? It's easy to start small, basic installation well under 15 minutes. Very popular, supported by a lot

More information

ProxySQL Tutorial. With a GPL license! High Performance & High Availability Proxy for MySQL. Santa Clara, California April 23th 25th, 2018

ProxySQL Tutorial. With a GPL license! High Performance & High Availability Proxy for MySQL. Santa Clara, California April 23th 25th, 2018 ProxySQL Tutorial High Performance & High Availability Proxy for MySQL With a GPL license! Santa Clara, California April 23th 25th, 2018 Who we are René Cannaò ProxySQL Founder Derek Downey Director of

More information

Introduction to MySQL InnoDB Cluster

Introduction to MySQL InnoDB Cluster 1 / 148 2 / 148 3 / 148 Introduction to MySQL InnoDB Cluster MySQL High Availability made easy Percona Live Europe - Dublin 2017 Frédéric Descamps - MySQL Community Manager - Oracle 4 / 148 Safe Harbor

More information

1Z Oracle. MySQL 5 Database Administrator Certified Professional Part I

1Z Oracle. MySQL 5 Database Administrator Certified Professional Part I Oracle 1Z0-873 MySQL 5 Database Administrator Certified Professional Part I Download Full Version : http://killexams.com/pass4sure/exam-detail/1z0-873 A. Use the --log-queries-indexes option. B. Use the

More information

Jailbreaking MySQL Replication Featuring Tungsten Replicator. Robert Hodges, CEO, Continuent

Jailbreaking MySQL Replication Featuring Tungsten Replicator. Robert Hodges, CEO, Continuent Jailbreaking MySQL Replication Featuring Tungsten Robert Hodges, CEO, Continuent About Continuent / Continuent is the leading provider of data replication and clustering for open source relational databases

More information

Introduction to troubleshooting Basic techniques. Sveta Smirnova Principal Support Engineer March, 10, 2016

Introduction to troubleshooting Basic techniques. Sveta Smirnova Principal Support Engineer March, 10, 2016 Introduction to troubleshooting Basic techniques Sveta Smirnova Principal Support Engineer March, 10, 2016 Table of Contents Introduction How to find problematic query Solving issues Syntax errors Logic

More information

ProxySQL - GTID Consistent Reads. Adaptive query routing based on GTID tracking

ProxySQL - GTID Consistent Reads. Adaptive query routing based on GTID tracking ProxySQL - GTID Consistent Reads Adaptive query routing based on GTID tracking Introduction Rene Cannao Founder of ProxySQL MySQL DBA Introduction Nick Vyzas ProxySQL Committer MySQL DBA What is ProxySQL?

More information

Managing MySQL Version Upgrades. Operating Systems. About the Author OTN TOUR years with MySQL / 26 years with RDBMS

Managing MySQL Version Upgrades. Operating Systems. About the Author OTN TOUR years with MySQL / 26 years with RDBMS About the Author Ronald BRADFORD Managing MySQL Version Upgrades Ronald Bradford http://ronaldbradford.com @RonaldBradford 16 years with MySQL / 26 years with RDBMS Senior Consultant at MySQL Inc (06-08)

More information

Using the MySQL Binary Log as a Change Stream

Using the MySQL Binary Log as a Change Stream Using the MySQL Binary Log as a Change Stream Luis Soares Software Development Director MySQL Replication October, 2018 Copyright 2018, Oracle and/or its affiliates. All rights reserved. Oracle Code Safe

More information

MySQL Utilities, part 1. Sheeri Cabral. Senior DB Admin/Architect,

MySQL Utilities, part 1. Sheeri Cabral. Senior DB Admin/Architect, MySQL Utilities, part 1 Sheeri Cabral Senior DB Admin/Architect, Mozilla @sheeri www.sheeri.com A set of tools What are they? What are they? A set of tools Like Percona toolkit, Open Ark Kit What are they?

More information

Continuous MySQL Restores Divij Rajkumar

Continuous MySQL Restores Divij Rajkumar Continuous MySQL Restores Divij Rajkumar (divij@fb.com) Production Engineer, MySQL Infrastructure, Facebook Continuous Restores Why? Verify backup integrity Haven t tested your backups? You don t have

More information

MySQL Replication Update

MySQL Replication Update MySQL Replication Update Lars Thalmann Development Director MySQL Replication, Backup & Connectors OSCON, July 2011 MySQL Releases MySQL 5.1 Generally Available, November 2008 MySQL

More information

MariaDB CeBIT MariaDB 10.1: Datenbankverschlüsselung und andere Sicherheitsvorteile. Jens Bollmann, Principal Instructor/Consultant

MariaDB CeBIT MariaDB 10.1: Datenbankverschlüsselung und andere Sicherheitsvorteile. Jens Bollmann, Principal Instructor/Consultant 2015, MariaDB Corp. MariaDB CeBIT 2016 MariaDB 10.1: Datenbankverschlüsselung und andere Sicherheitsvorteile Jens Bollmann, Principal Instructor/Consultant Agenda MariaDB 10.1/10.2 new features High Availabilty

More information

What s New in MariaDB 10?

What s New in MariaDB 10? What s New in MariaDB 10? Author: Maria Luisa Raviol Last update: 06.10.2014 Page 1 1 What s New in MariaDB 10... 4 1.1 What is MariaDB 10?... 4 1.2 MariaDB 10 s Inheritance... 4 1.3 MySQL 5.6 Backported

More information

1 Copyright 2011, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 8

1 Copyright 2011, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 8 1 Copyright 2011, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 8 ADVANCED MYSQL REPLICATION ARCHITECTURES Luís

More information

Galera in MariaDB 10.4 State of the Art and Plans

Galera in MariaDB 10.4 State of the Art and Plans Galera in MariaDB 10.4 State of the Art and Plans Seppo Jaakola Codership Seppo Jaakola One of the Founders of Codership Codership Galera Replication developers Partner of MariaDB for developing and supporting

More information

MariaDB High Availability. MariaDB Training

MariaDB High Availability. MariaDB Training MariaDB Training Introduction Introduction Complex Scenarios Enterprise Cluster Back-Ups with Cluster MaxScale Installation DRBD Monitoring Overview Semi-Synch Plugin Cluster Configuration MariaDB MaxScale

More information

Performance Schema for MySQL Troubleshooting. April, 25, 2017 Sveta Smirnova

Performance Schema for MySQL Troubleshooting. April, 25, 2017 Sveta Smirnova Performance Schema for MySQL Troubleshooting April, 25, 2017 Sveta Smirnova Sveta Smirnova 2 MySQL Support engineer Author of MySQL Troubleshooting JSON UDF functions FILTER clause for MySQL Speaker Percona

More information

MySQL 5.0 Reference Manual :: B Errors, Error Codes, and Common Problems :: B.3 Server Error Codes and

MySQL 5.0 Reference Manual :: B Errors, Error Codes, and Common Problems :: B.3 Server Error Codes and 1 di 29 07/12/2009 10:35 Skip navigation links Recommended Servers for MySQL The world's most popular open source database Contact a MySQL Representative Search Login Register MySQL.com Downloads Developer

More information

Creating a Best-in-Class Backup and Recovery System for Your MySQL Environment. Akshay Suryawanshi DBA Team Manager,

Creating a Best-in-Class Backup and Recovery System for Your MySQL Environment. Akshay Suryawanshi DBA Team Manager, Creating a Best-in-Class Backup and Recovery System for Your MySQL Environment Akshay Suryawanshi DBA Team Manager, 2015-07-15 Agenda Why backups? Backup Types Binary or Raw Backups Logical Backups Binlog

More information

Percona XtraDB Cluster

Percona XtraDB Cluster Percona XtraDB Cluster Ensure High Availability Presenter Karthik P R CEO Mydbops www.mydbops.com info@mydbops.com Mydbops Mydbops is into MySQL/MongoDB Support and Consulting. It is founded by experts

More information

MariaDB Developer UnConference April 9-10 th 2017 New York. MyRocks in MariaDB. Why and How. Sergei Petrunia

MariaDB Developer UnConference April 9-10 th 2017 New York. MyRocks in MariaDB. Why and How. Sergei Petrunia MariaDB Developer UnConference April 9-10 th 2017 New York MyRocks in MariaDB Why and How Sergei Petrunia sergey@mariadb.com About MariaDB What is MyRocks? 11:00:56 2 What is MyRocks RocksDB + MySQL =

More information

Improvements in MySQL 5.5 and 5.6. Peter Zaitsev Percona Live NYC May 26,2011

Improvements in MySQL 5.5 and 5.6. Peter Zaitsev Percona Live NYC May 26,2011 Improvements in MySQL 5.5 and 5.6 Peter Zaitsev Percona Live NYC May 26,2011 State of MySQL 5.5 and 5.6 MySQL 5.5 Released as GA December 2011 Percona Server 5.5 released in April 2011 Proven to be rather

More information

MySQL Group Replication in a nutshell

MySQL Group Replication in a nutshell 1 / 126 2 / 126 MySQL Group Replication in a nutshell the core of MySQL InnoDB Cluster Oracle Open World September 19th 2016 Frédéric Descamps MySQL Community Manager 3 / 126 Safe Harbor Statement The

More information

MySQL High Availability Solutions. Alex Poritskiy Percona

MySQL High Availability Solutions. Alex Poritskiy Percona MySQL High Availability Solutions Alex Poritskiy Percona The Five 9s of Availability Clustering & Geographical Redundancy Clustering Technologies Replication Technologies Well-Managed disasters power failures

More information

What s new in Mongo 4.0. Vinicius Grippa Percona

What s new in Mongo 4.0. Vinicius Grippa Percona What s new in Mongo 4.0 Vinicius Grippa Percona About me Support Engineer at Percona since 2017 Working with MySQL for over 5 years - Started with SQL Server Working with databases for 7 years 2 Agenda

More information

Copyright 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 12

Copyright 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 12 1 MySQL : 5.6 the Next Generation Lynn Ferrante Principal Consultant, Technical Sales Engineering Northern California Oracle Users Group November 2012 2 Safe Harbor Statement The

More information

ZABBIX TIPS & TRICKS. Kaspars Mednis, ZABBIX

ZABBIX TIPS & TRICKS. Kaspars Mednis, ZABBIX ZABBIX TIPS & TRICKS Kaspars Mednis, ZABBIX 1. {$USER_MACROS} Zabbix Tips and Tricks What are {$USER_MACROS}? They are variable names to store different information trigger thresholds different filters

More information

Effective MySQL. Replication Techniques in Depth

Effective MySQL. Replication Techniques in Depth Effective MySQL Replication Techniques in Depth About the Authors Ronald Bradford has worked in the relational database industry for over 20 years. His professional background began in 1989 with Ingres

More information

High availability with MariaDB TX: The definitive guide

High availability with MariaDB TX: The definitive guide High availability with MariaDB TX: The definitive guide MARCH 2018 Table of Contents Introduction - Concepts - Terminology MariaDB TX High availability - Master/slave replication - Multi-master clustering

More information

Testing and Verifying your MySQL Backup Strategy

Testing and Verifying your MySQL Backup Strategy About the Author Ronald BRADFORD Testing and Verifying your MySQL Backup Strategy Ronald Bradford http://ronaldbradford.com @RonaldBradford 16 years with MySQL / 26 years with RDBMS Senior Consultant at

More information

Getting Started with MySQL

Getting Started with MySQL A P P E N D I X B Getting Started with MySQL M ysql is probably the most popular open source database. It is available for Linux and you can download and install it on your Linux machine. The package is

More information

MySQL Group Replication & MySQL InnoDB Cluster

MySQL Group Replication & MySQL InnoDB Cluster MySQL Group Replication & MySQL InnoDB Cluster Production Ready? Kenny Gryp productions Table of Contents Group Replication MySQL Shell (AdminAPI) MySQL Group Replication MySQL Router Best Practices Limitations

More information

Percona XtraDB Cluster MySQL Scaling and High Availability with PXC 5.7 Tibor Korocz

Percona XtraDB Cluster MySQL Scaling and High Availability with PXC 5.7 Tibor Korocz Percona XtraDB Cluster MySQL Scaling and High Availability with PXC 5.7 Tibor Korocz Architect Percona University Budapest 2017.05.11 1 2016 Percona Scaling and High Availability (application) 2 Scaling

More information

How to make MySQL work with Raft. Diancheng Wang & Guangchao Bai Staff Database Alibaba Cloud

How to make MySQL work with Raft. Diancheng Wang & Guangchao Bai Staff Database Alibaba Cloud How to make MySQL work with Raft Diancheng Wang & Guangchao Bai Staff Database Engineer @ Alibaba Cloud About me Name: Guangchao Bai Location: Beijing, China Occupation: Staff Database Engineer @ Alibaba

More information

Binlog Servers (and MySQL) at Booking.com. Jean-François Gagné jeanfrancois DOT gagne AT booking.com Presented at Percona Live Santa Clara 2015

Binlog Servers (and MySQL) at Booking.com. Jean-François Gagné jeanfrancois DOT gagne AT booking.com Presented at Percona Live Santa Clara 2015 Binlog Servers (and MySQL) at Booking.com Jean-François Gagné jeanfrancois DOT gagne AT booking.com Presented at Percona Live Santa Clara 2015 Booking.com 2 Booking.com Based in Amsterdam since 1996 Online

More information

1z0-888.exam.43q.

1z0-888.exam.43q. 1z0-888.exam.43q Number: 1z0-888 Passing Score: 800 Time Limit: 120 min 1z0-888 MySQL 5.7 Database Administrator Exam A QUESTION 1 Is it true that binary backups always take less space than text backups?

More information

Load Testing Tools. for Troubleshooting MySQL Concurrency Issues. May, 23, 2018 Sveta Smirnova

Load Testing Tools. for Troubleshooting MySQL Concurrency Issues. May, 23, 2018 Sveta Smirnova Load Testing Tools for Troubleshooting MySQL Concurrency Issues May, 23, 2018 Sveta Smirnova Introduction This is very personal webinar No intended use No best practices No QA-specific tools Real life

More information

MySQL Security, Privileges & User Management Kenny Gryp Percona Live Washington DC /

MySQL Security, Privileges & User Management Kenny Gryp Percona Live Washington DC / MySQL Security, Privileges & User Management Kenny Gryp Percona Live Washington DC / 2012-01-11 Security, Privileges & User Management Privilege System User Management Pluggable

More information

Effective Testing for Live Applications. March, 29, 2018 Sveta Smirnova

Effective Testing for Live Applications. March, 29, 2018 Sveta Smirnova Effective Testing for Live Applications March, 29, 2018 Sveta Smirnova Table of Contents Sometimes You Have to Test on Production Wrong Data SELECT Returns Nonsense Wrong Data in the Database Performance

More information

Migrating and living on RDS/Aurora. life after Datacenters

Migrating and living on RDS/Aurora. life after Datacenters Migrating and living on RDS/Aurora life after Datacenters Why to migrate to RDS - It is AWS native - A lot of complexity is handled by Amazon - It is Someone Else s Problem (SEP ) - You have someone to

More information

Online Schema Changes for Maximizing Uptime. David Turner - Dropbox Ben Black - Tango

Online Schema Changes for Maximizing Uptime. David Turner - Dropbox Ben Black - Tango Online Schema Changes for Maximizing Uptime David Turner - Dropbox Ben Black - Tango About us Dropbox Tango Dropbox is a free service that lets you bring your photos, docs, and videos anywhere and share

More information

MyRocks deployment at Facebook and Roadmaps. Yoshinori Matsunobu Production Engineer / MySQL Tech Lead, Facebook Feb/2018, #FOSDEM #mysqldevroom

MyRocks deployment at Facebook and Roadmaps. Yoshinori Matsunobu Production Engineer / MySQL Tech Lead, Facebook Feb/2018, #FOSDEM #mysqldevroom MyRocks deployment at Facebook and Roadmaps Yoshinori Matsunobu Production Engineer / MySQL Tech Lead, Facebook Feb/2018, #FOSDEM #mysqldevroom Agenda MySQL at Facebook MyRocks overview Production Deployment

More information

Safe Harbor Statement

Safe Harbor Statement Safe Harbor Statement The following is intended to outline our general product direction. It is intended for information purposes only, and may not be incorporated into any contract. It is not a commitment

More information

MySQL at Scale at Square

MySQL at Scale at Square MySQL at Scale at Square Bill Karwin, Square Inc. October, 2018 1 Square An honest financial network for everyone Global: USA, Canada, UK, Japan, Australia Payment transaction data stored in MySQL We are

More information

HA solution with PXC-5.7 with ProxySQL. Ramesh Sivaraman Krunal Bauskar

HA solution with PXC-5.7 with ProxySQL. Ramesh Sivaraman Krunal Bauskar HA solution with PXC-5.7 with ProxySQL Ramesh Sivaraman Krunal Bauskar Agenda What is Good HA eco-system? Understanding PXC-5.7 Understanding ProxySQL PXC + ProxySQL = Complete HA solution Monitoring using

More information

Understanding Percona XtraDB Cluster 5.7 Operation and Key Algorithms. Krunal Bauskar PXC Product Lead (Percona Inc.)

Understanding Percona XtraDB Cluster 5.7 Operation and Key Algorithms. Krunal Bauskar PXC Product Lead (Percona Inc.) Understanding Percona XtraDB Cluster 5.7 Operation and Key Algorithms Krunal Bauskar PXC Product Lead (Percona Inc.) Objective I want to use Percona XtraDB Cluster but is it suitable for my needs and can

More information

MySQL Configuration Settings

MySQL Configuration Settings Get It Done With MySQL 5&Up, Appendix B. Copyright Peter Brawley and Arthur Fuller 217. All rights reserved. TOC Previous Next MySQL Configuration Settings Server options and system MySQL maintains well

More information

MySQL 5.6 & 5.7 & 5.7+ Unlimited scaling???

MySQL 5.6 & 5.7 & 5.7+ Unlimited scaling??? MySQL 5.6 & 5.7 & 5.7+ Unlimited scaling??? Carsten Thalheimer Technical Sales Consultant (Carsten.Thalheimer@Oracle.com) Linux - Virtualization - MySQL (LVM GBU - EMEA) Copyright 2013, Oracle and/or its

More information

G a l e r a C l u s t e r Schema Upgrades

G a l e r a C l u s t e r Schema Upgrades G a l e r a C l u s t e r Schema Upgrades Seppo Jaakola Codership Agenda Galera Cluster Overview DDL vs DML Demo of DDL Replication in Galera Cluster Rolling Schema Upgrade (RSU) Total Order Isolation

More information

Meet the Sergei Golubchik MariaDB Corporation

Meet the Sergei Golubchik MariaDB Corporation Meet the 10.2 Sergei Golubchik MariaDB Corporation k 10.2 Facts About a year in active development Currently at 10.2.2 beta Plans Gamma soon GA by the end of the year 10.2 Analytical queries Removing historical

More information

MySQL Replication: What's New In MySQL 5.7 and MySQL 8. Luís Soares Software Development Director MySQL Replication

MySQL Replication: What's New In MySQL 5.7 and MySQL 8. Luís Soares Software Development Director MySQL Replication MySQL Replication: What's New In MySQL 5.7 and MySQL 8 Luís Soares Software Development Director MySQL Replication Tuesday, 24th April 2018, Santa Clara, CA, USA Copyright 2018, Oracle and/or its affiliates.

More information