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

Size: px
Start display at page:

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

Transcription

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

2 Agenda Intros Concepts Replication overview GTID Intro Implementation Maintenance New 5.7 Features and Advanced Concepts 2

3 About Mark Works at SurveyMonkey From Kansas Formerly of PalominoDB and Garmin and preschool 3

4 About Gillian Senior Infrastructure Engineer at GitHub From Vancouver, BC, Canada Formerly of Okta, PalominoDB, Oracle, Disney 4

5 About Brian Database Engineer, MySQL SRE at Dropbox From Seattle Formerly of PalominoDB, Zappos, EMusic, etc Also from Kansas 5

6 Tutorial Setup (Hour 2) Collect a DigitalOcean droplet host access card from the front Connect to wireless and ssh to the droplet host (server1) Confirm you can ssh to server2 and server3 from server1 Confirm replication is running server1 master server2 replica server3 replica 6

7 Concepts Traditional replication primer and introduction to GTID 7

8 Traditional MySQL replication primer Standard topologies SHOW MASTER STATUS SHOW SLAVE STATUS 8

9 Standard topologies server1 master server2 replica server1 master server2 relay server3 replica server3 replica 9

10 SHOW MASTER STATUS [(none)]> show master status; File Position Binlog_Do_DB Binlog_Ignore_DB mysql-bin row in set (0.08 sec) 10

11 SHOW SLAVE STATUS [(none)]> show slave status\g *************************** 1. row *************************** Slave_IO_State: Waiting for master to send event Master_Host: Master_User: repl Master_Port: 3306 Connect_Retry: 60 Master_Log_File: mysql-bin Read_Master_Log_Pos: Relay_Log_File: mysqld-relay-bin Relay_Log_Pos: Relay_Master_Log_File: mysql-bin Slave_IO_Running: Yes Slave_SQL_Running: Yes Replicate_Do_DB: Replicate_Ignore_DB: Replicate_Do_Table: Replicate_Ignore_Table: Replicate_Wild_Do_Table: Replicate_Wild_Ignore_Table: Last_Errno: 0 Last_Error: Skip_Counter: 0 Exec_Master_Log_Pos: Relay_Log_Space: Until_Condition: None Until_Log_File: Until_Log_Pos: 0 Master_SSL_Allowed: No Master_SSL_CA_File: Master_SSL_CA_Path: Master_SSL_Cert: Master_SSL_Cipher: Master_SSL_Key: Seconds_Behind_Master: 0 Master_SSL_Verify_Server_Cert: No Last_IO_Errno: 0 Last_IO_Error: Last_SQL_Errno: 0 Last_SQL_Error: 1 row in set (0.08 sec) 11

12 SHOW SLAVE STATUS Master information and running status Slave_IO_State: Waiting for master to send event Master_Host: Master_User: repl Master_Port: 3306 Slave_IO_Running: Yes Slave_SQL_Running: Yes Seconds_Behind_Master: 0 Displays state of replication IO thread - whether logs are being pulled from the master. 12

13 SHOW SLAVE STATUS Master information and running status Slave_IO_State: Waiting for master to send event Master_Host: Master_User: repl Master_Port: 3306 Slave_IO_Running: Yes Slave_SQL_Running: Yes Seconds_Behind_Master: 0 Configured host database 13

14 SHOW SLAVE STATUS Master information and running status Slave_IO_State: Waiting for master to send event Master_Host: Master_User: repl Master_Port: 3306 Slave_IO_Running: Yes Slave_SQL_Running: Yes Seconds_Behind_Master: 0 MySQL user configured for replication 14

15 SHOW SLAVE STATUS Master information and running status Slave_IO_State: Waiting for master to send event Master_Host: Master_User: repl Master_Port: 3306 Slave_IO_Running: Yes Slave_SQL_Running: Yes Seconds_Behind_Master: 0 DB port being connected to (default) 15

16 SHOW SLAVE STATUS Master information and running status Slave_IO_State: Waiting for master to send event Master_Host: Master_User: repl Master_Port: 3306 Slave_IO_Running: Yes Slave_SQL_Running: Yes Seconds_Behind_Master: 0 Two replication threads, one reading from master, other executing SQL on replica. 16

17 SHOW SLAVE STATUS Master information and running status Slave_IO_State: Waiting for master to send event Master_Host: Master_User: repl Master_Port: 3306 Slave_IO_Running: Yes Slave_SQL_Running: Yes Seconds_Behind_Master: 0 Seconds between timestamp in binlog, and time on replica 17

18 SHOW SLAVE STATUS Log file information Master_Log_File: mysql-bin Read_Master_Log_Pos: Relay_Log_File: mysqld-relay-bin Relay_Log_Pos: Relay_Master_Log_File: mysql-bin Exec_Master_Log_Pos: Relay_Log_Space: Binary log file on master, and position it s read to 18

19 SHOW SLAVE STATUS Log file information Master_Log_File: mysql-bin Read_Master_Log_Pos: Relay_Log_File: mysqld-relay-bin Relay_Log_Pos: Relay_Master_Log_File: mysql-bin Exec_Master_Log_Pos: Relay_Log_Space: Position in relay log on replica 19

20 SHOW SLAVE STATUS Log file information Master_Log_File: mysql-bin Read_Master_Log_Pos: Relay_Log_File: mysqld-relay-bin Relay_Log_Pos: Relay_Master_Log_File: mysql-bin Exec_Master_Log_Pos: Relay_Log_Space: Position in binary log that SQL thread has executed on replica 20

21 SHOW SLAVE STATUS SSL information Master_SSL_Allowed: No Master_SSL_CA_File: Master_SSL_CA_Path: Master_SSL_Cert: Master_SSL_Cipher: Master_SSL_Key: 21

22 SHOW SLAVE STATUS Filtering information Until_Condition: None Replicate_Do_DB: Replicate_Ignore_DB: Replicate_Do_Table: Replicate_Ignore_Table: Replicate_Wild_Do_Table: Replicate_Wild_Ignore_Table: Filtered replication settings -- Use with caution 22

23 Defining GTID - Global Transaction IDentifier - source_id:transaction_id - e200c55b e5-9d ca78:1 - source_id - normally the server_uuid of the master - transaction_id - sequential integer (starts at 1) representing the order a transaction was committed on the source 23

24 Binary Log Contents Standard replication # at # :05:42 server id 3031 end_log_pos Table_map: `C `.`FormStats` mapped to number # :05:42 server id 3031 end_log_pos Update_rows: table id flags: STMT_END_F BINLOG ' RgneVhPXCwAAOAAAANg8KAAABhPVggAAAEACUMwMDcwMzczNQAJm9ybVN0YXRzAAQDDAMDAAA= RgneVhjXCwAASAAAACA9KAAABhPVggAAAEABP//8AdPAACwPPLvVIAACgBAAAMAAAA8AdPAACw PPLvVRIAACkBAAAMAAAA '/*!*/; ### UPDATE C FormStats ### WHERE 15:00:00 ### SET 15:00:00 # at # :05:42 server id 3031 end_log_pos Xid = COMMIT/*!*/; 24

25 Binary Log Contents GTID Enabled # :37:48 server id end_log_pos CRC32 0xee79822d GTID [commit=yes] SET '81b0bb5e-f004-11e5-aaa3-b8ca3a676681:100'/*!*/; # at # :37:48 server id end_log_pos CRC32 0xdac047b0 Query thread_id=4611 exec_time=0 error_code=0 SET TIMESTAMP= /*!*/; BEGIN /*!*/; # at # :37:48 server id end_log_pos CRC32 0xd3c70a01 Table_map: `C `.`FormStats` mapped to number 74 # at # :37:48 server id end_log_pos CRC32 0xa031417e Update_rows: table id 74 flags: STMT_END_F BINLOG ' razzvhmtfwokpqaaag6kaaaaaeoaaaaaaumwmtg0mdu4nwajrm9ybvn0yxrzaaqdegmdaqaaaqrh0w== razzvh8tfwoksaaaalakaaaaaeoaaa///wbaaaajmy7uaaagaaaaiaaadwbaaaajmy7uaaawaaaaiaaab+qtgg '/*!*/; ### UPDATE `C `.`FormStats` ### WHERE 14:00:00' 25

26 SHOW SLAVE STATUS NEW GTID Information Master_UUID: 81b0bb5e-f004-11e5-aaa3-b8ca3a Retrieved_Gtid_Set: 81b0bb5e-f004-11e5-aaa3-b8ca3a676681:1-51 Executed_Gtid_Set: 81b0bb5e-f004-11e5-aaa3-b8ca3a676681:

27 GTID Sets & Related Variables - Rather than just a single transaction_id, an interval is given - A range of transactions - e200c55b e5-9d ca78: Two ranges with a gap - e200c55b e5-9d ca78:1-1234, Commonly used variables related to GTID - server_uuid - enforce_gtid_consistency - gtid_mode - gtid_next 27

28 GTID vs Binlog Position - Traditional replication coordinates - MASTER_LOG_FILE - MASTER_LOG_POS - GTID replication coordinates - MASTER_AUTO_POSITION 28

29 Enabling GTIDs in Oracle MySQL Guarantee master and replica(s) are in sync by enabling read_only on the master and allow replication to catch up - Shutdown the master and replica(s) - Add the following to my.cnf - enforce-gtid-consistency - gtid-mode = ON - skip-slave-start - log-slave-updates - read-only = 1 - Start the master and replica(s) - Start replication CHANGE MASTER TO MASTER_HOST= server1, MASTER_AUTO_POSITION=1; START SLAVE; - Disable read_only on the master and remove read-only from the my.cnf 29

30 Potential Replication Conflicts - Traditional replication required unique server_id values in a cluster - GTID replication requires unique sources (server_uuid) - data_dir/auto.cnf contains the server_uuid value - when the server starts it will generate a new server_uuid and save it in auto.cnf if not found - Beware cloning of replicas - The auto.cnf file will be copied as well and needs to be removed prior to server start - This is similar to the process of changing the server_id in my.cnf 30

31 Implementation Enabling GTID and making topology changes 31

32 Connection setup See for all the commands being run Start in the Prep work tab ssh to your provided host in 3 terminal windows/tabs/panes this will be server1 ssh directly to server2 and server3 in the other windows Use mysql (no password) to connect to local mysql instance 32

33 A note about conventions A lot of this is BAD PRACTICE root user, no password Hacky, incorrect SQL for fixes Slow progress between steps Not worrying about errant writes between steps Making deliberate mistakes 33

34 Starting topology server1 master server2 replica server3 replica 34

35 MySQL instance information Ubuntu on DigitalOcean droplet Percona Server Important file locations: MySQL config file: /etc/mysql/my.cnf datadir: /var/lib/mysql/ Binary logs: /var/lib/mysql/mysql-bin.00000x Relay logs: /var/lib/mysql/relay-bin.00000x Restart mysqld via service mysql start/stop/restart 35

36 MySQL instance: replication configuration Regular non-gtid replication binlog_format=row mysqlbinlog --no-defaults --base64-output=decode-rows -vvv [binlog] Some variables already set: skip-slave-start log-bin, log-slave-updates 36

37 Important GTID variables gtid_mode Static variable (requires restart) If ON, requires log-bin, log-slave-updates, enforce-gtid-consistency also set Disabled by gtid_deployment_step gtid_deployment_step Percona-specific dynamic variable Used as a temporary setting on replicas ON means: can replicate non-gtid binary log events from master direct writes won t have GTIDs 37

38 Important GTID variables (cont.) master_auto_position Tells server to use GTID replication protocol Needed for simplified server failover/repointing Set in CHANGE MASTER statement instead of master_log_file, master_log_pos Shown as Auto_Position in SHOW SLAVE STATUS Setting to 1 tells server to only replicate GTID events 38

39 Important GTID variables (cont.) Setting both gtid_deployment_step=on and master_auto_position=1 will result in silently ignored non-gtid events server3 will be used to demonstrate this 39

40 Prep work: general steps Use mysqlslap and inserts to generate writes between steps Edit the [mysqld] section in /etc/mysql/my.cnf on all 3 servers: enforce-gtid-consistency = 1 gtid-mode = ON Restart server2 and server3 (service mysql restart) Set these variables on server2 and server3: SET GLOBAL gtid_deployment_step=on; SET GLOBAL super_read_only=on; 40

41 Prep work: results non-gtid writes to server1 still replicating properly gtid_mode=off gtid_deployment_step=off server1 master server2 replica gtid_mode=on gtid_deployment_step=on server3 replica gtid_mode=on gtid_deployment_step=on 41

42 Enable GTIDs: Topology change Failover to server2 Intentional breaking/fixing of replication server1 master server2 replica server1 replica server2 master server3 replica server3 replica 42

43 Important GTID status info variables Retrieved_Gtid_Set All GTIDs received from the master Resets on: CHANGE MASTER RESET SLAVE server restart (if relay-log-recovery is on) Executed_Gtid_Set All GTIDs written to binary log Same value seen in: SHOW MASTER STATUS SHOW SLAVE STATUS gtid_executed variable 43

44 GTID slave status [(none)]> show slave status\g *************************** 1. row *************************** Slave_IO_Running: Yes Slave_SQL_Running: No... Master_UUID: cc83d91e-d0e4-11e5-9faf-02cddc874cbb... Retrieved_Gtid_Set: cc83d91e-d0e4-11e5-9faf-02cddc874cbb:1-107 Executed_Gtid_Set: c866b7ac-d0e4-11e5-9faf-020a6fe2a217:1-442, cc83d91e-d0e4-11e5-9faf-02cddc874cbb:1-107 Auto_Position: 0 44

45 GTID master status [(none)]> show master status\g *************************** 1. row *************************** File: mysql-bin Position: Binlog_Do_DB: Binlog_Ignore_DB: Executed_Gtid_Set: c866b7ac-d0e4-11e5-9faf-020a6fe2a217:1-442, cc83d91e-d0e4-11e5-9faf-02cddc874cbb: row in set (0.00 sec) 45

46 Enable GTIDs: general steps Set server1 to read-only Point server1 to server2 Repoint server3 to server2 (incorrectly) Test server2 to server3 replication (broken) Fix server3 replication Fix server1 replication 46

47 Enable GTIDs: breaking things gtid_mode=off server1 replica error server2 master gtid_mode=on gtid_deployment_step=on silently dropped writes server3 replica gtid_mode=on gtid_deployment_step=on master_auto_position=1 47

48 Promote server-1: Topology change Failover back to original topology server1 replica server2 master server1 master server2 replica server3 replica server3 replica 48

49 Promote server1: general steps Set server2 to read-only Repoint server2 to server1 Repoint server3 to server1 Turn off read-only on server1 Turn off replication on server1 49

50 Server2 relay to server3: Topology change Repoint server3 to server2 server1 master server2 replica server1 master server2 relay server3 replica server3 replica 50

51 Server2 relay to server3: non-gtid long way server3 STOP SLAVE server2 wait until replication ahead of server3 FLUSH TABLES; FLUSH TABLES WITH READ LOCK; SHOW MASTER STATUS; SHOW SLAVE STATUS\G UNLOCK TABLES; server3 START SLAVE UNTIL [recorded server2 slave file/position] wait until SHOW SLAVE STATUS says Slave_SQL_Running: No CHANGE MASTER TO [recorded server2 master file/position] START SLAVE 51

52 Server2 relay to server3: with GTIDs and master_auto_position=1 server3 stop slave; CHANGE MASTER TO master_host= server2 ; start slave; 52

53 Maintenance 53

54 Maintenance Determine the currently writing master GTID set gaps Finding transactions in the binary logs Fixing transactions with gtid_next Faking and skipping transactions 54

55 Currently writing master Master_UUID can be misleading as to who is writing server_uuid bd f2c5-11e5-bc9a-021b71 e877a3 Executed_Gtid_Set bcc3d83d-f2c5-11e5-bc9a-029d98 5ea7a3:1-2, bd f2c5-11e5-bc9a-021b71 e877a3:1-111 server1 master server2 relay server_uuid bcc3d83d-f2c5-11e5-bc9a-029 d985ea7a3 Master_UUID bd f2c5-11e5-bc9a-021 b71e877a3 server3 replica server_uuid be2ed142-f2c5-11e5-bc9a cd201 Master_UUID bcc3d83d-f2c5-11e5-bc9a-029 d985ea7a3 55

56 GTID set gaps Gaps within a GTID set occur when slave_parallel_workers > 1 A transaction is missing Executed_Gtid_Set bcc3d83d-f2c5-11e5-bc9a-029d985ea7a3:1-2, bd f2c5-11e5-bc9a-021b71e877a3: 1-111:

57 Finding transactions mysqlbinlog include_gtids exclude_gtids Beware transactions without gtid_next (gtid_mode=off) mysqlbinlog --no-defaults -vvv --base64-output=decode-rows --include-gtids='bd f2c5-11e5-bc9a-021b71e877a3:112' /var/lib/mysql/mysql-bin SET 'bd f2c5-11e5-bc9a-021b71e877a3:112'/*!*/; 57

58 Fixing transactions with gtid_next Accidental writes on a replica happen Who hasn t forgotten to set sql_log_bin=0? Apply DDL to replicas for very large tables then promote Realign GTID sets to match the recorded direct write to the replica ALTER TABLE mysqlslap.t1 ADD COLUMN newcol3 varchar(128); 58

59 Faking and skipping transactions What if the change on the replica was already fixed or irrelevant How to skip a transaction sql_slave_skip_counter set gtid_next='xxx_gtid_xxx'; BEGIN; COMMIT; 59

60 Advanced Concepts Things to investigate 60

61 Advanced Concepts GTID variables binlog_gtid_simple_recovery GTID Set functions START SLAVE UNTIL SHOW SLAVE STATUS NONBLOCKING 61

62 GTID Variables gtid_executed Same information as seen in SHOW MASTER/SLAVE STATUS gtid_purged Subset of gtid_executed that are no longer in the binary logs 62

63 binlog_gtid_simple_recovery Controls how binary logs are iterated over when MySQL starts When set to TRUE gtid_executed is set based on Gtid_log_event in the newest binary log file gtid_purged is set based on Previous_gtids_log_event in the oldest file When FALSE Both variables are computed by iterating through the binary logs from newest to oldest (gtid_executed) and oldest to newest (gtid_purged) Used when there may be transactions without GTIDs prior to enabling gtid_mode or setting gtid_purged 63

64 GTID Set functions GTID_SUBSET(subset,set) Return true if subset is in the set GTID_SUBTRACT(set,subset) Return what is in set less the subset Know what is still available on the master or difference between binary logs select WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS(gtid_set,timeout) Wait for a gtid_set to complete or timeout, returning a count of transactions completed MASTER_POS_WAIT(log_name,log_pos,timeout) 64

65 START SLAVE UNTIL... SQL_BEFORE_GTIDS SQL_AFTER_GTIDS SQL_AFTER_MTS_GAPS Reverting slave_parallel_workers to 0 65

66 SHOW SLAVE STATUS NONBLOCKING Issuing STOP SLAVE creates a global lock on other SLAVE commands Lock remains while the last replication event group finishes rpl_stop_slave_timeout controls how long stop slave will wait (defaults to 1 YEAR) Issuing SHOW SLAVE STATUS will wait until the STOP SLAVE unlocks SHOW SLAVE STATUS NONBLOCKING allows bypassing the lock 5.7 no longer blocks on SHOW SLAVE STATUS 66

67 New 5.7 Features Things to look forward to 67

68 New items or changes in 5.7 Enabling GTID online mysql.gtid_executed table Use performance_schema to view MTR details 68

69 Enabling GTID online gtid_mode and enforce_gtid_consistency are now dynamic No longer requires restarts or promotions enforce_gtid_consistency - WARN -> ON gtid_mode - OFF <-> OFF_PERMISSIVE <-> ON_PERMISSIVE <-> ON No longer requires log_bin and log_slave_updates 69

70 mysql.gtid_executed table Stores the source uuid and start/end intervals for executed statements (GTID set) The table is compressed for contiguous GTID sets depending on log_bin If log_bin is OFF, then executed_gtids_compression_period determines how many transactions are executed before compressing If log_bin is ON, then the table is compressed during each binary log rotation 70

71 Give us your feedback! 71

72 See us again Mark Filipi Using Ansible to Manage MySQL 4 October 5:20 PM - 06:10 PM in Lausanne Gillian Gunson and Brian Cain At the bar 72

73 Thank you! 73

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

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

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

MySQL Multi-Source Replication

MySQL Multi-Source Replication MySQL Multi-Source Replication Max Bubenick - max.bubenick@percona.com Technical Operations Manager Wagner Bianchi - wagner.bianchi@percona.com Principal Technical Services Engineer This is gonna be a

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

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

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 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

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 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

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

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 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 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

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

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

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

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

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

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

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

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

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

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

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 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

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

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

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

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

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

Reliable Crash Detection and Failover with Orchestrator

Reliable Crash Detection and Failover with Orchestrator 1 Reliable Crash Detection and Failover with Orchestrator Shlomi Noach, PerconaLive 2016 " How people build software Agenda Orchestrator Topologies, crash scenarios Crash detection methods Promotion complexity

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

Wednesday, May 15, 13

Wednesday, May 15, 13 1 Whats New With MySQL 5.6 Ligaya Turmelle Principle Technical Support Engineer - MySQL https://joind.in/8176 About Me ligaya.turmelle@oracle.com MySQL Support

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

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

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

MySQL with Windows Server 2008 R2 Failover Clustering

MySQL with Windows Server 2008 R2 Failover Clustering MySQL with Windows Server 2008 R2 Failover Clustering Delivering High Availability with MySQL on Windows A MySQL White Paper September 2011 Table of Contents Summary... 3 Value of MySQL on Windows... 3

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 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

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

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

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

This presentation is a bit different in that we are usually talking to DBA s about MySQL.

This presentation is a bit different in that we are usually talking to DBA s about MySQL. This presentation is a bit different in that we are usually talking to DBA s about MySQL. Since this is a developer s conference, we are going to be looking at replication from a developer s point of view.

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

Python MySQL Replication Documentation

Python MySQL Replication Documentation Python MySQL Replication Documentation Release 0.14 Julien Duponchelle Jan 12, 2018 Contents 1 Use cases 3 2 Contents 5 2.1 Installation................................................ 5 2.2 Limitations................................................

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

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

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

MariaDB 10.3 vs MySQL 8.0. Tyler Duzan, Product Manager Percona

MariaDB 10.3 vs MySQL 8.0. Tyler Duzan, Product Manager Percona MariaDB 10.3 vs MySQL 8.0 Tyler Duzan, Product Manager Percona Who Am I? My name is Tyler Duzan Formerly an operations engineer for more than 12 years focused on security and automation Now a Product Manager

More information

MySQL Schema Migrations: Exploring the Options. Santa Clara, California April 23th 25th, 2018 Brian Cain Gillian Gunson Mark Filipi

MySQL Schema Migrations: Exploring the Options. Santa Clara, California April 23th 25th, 2018 Brian Cain Gillian Gunson Mark Filipi MySQL Schema Migrations: Exploring the Options Santa Clara, California April 23th 25th, 2018 Brian Cain Gillian Gunson Mark Filipi About Mark - Senior Database Administrator at SurveyMonkey - Formerly

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

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

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 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

HP Open Source Middleware Stacks Blueprint:

HP Open Source Middleware Stacks Blueprint: HP Open Source Middleware Stacks Blueprint: Database Server on HP Server Platforms with MySQL and Red Hat Enterprise Linux Version 5 HP Part Number: 5991 7431 Published: August 2007 Edition: 2.0 Copyright

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

Oracle 1Z MySQL 5.6 Database Administrator. Download Full Version :

Oracle 1Z MySQL 5.6 Database Administrator. Download Full Version : Oracle 1Z0-883 MySQL 5.6 Database Administrator Download Full Version : http://killexams.com/pass4sure/exam-detail/1z0-883 D. The mysqld binary was not compiled with SSL support. E. The server s SSL certificate

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

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

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

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

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

High Availability Failover. Version 1.0

High Availability Failover. Version 1.0 High Availability Failover Version 1.0 CONTENTS High Availability Failover High Availability Failover (Active/Active) 2 Prerequisites 2 STEP 1: DB Replication Server Setup 2 STEP 2: Configure the 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

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

Migrating to XtraDB Cluster 2014 Edition

Migrating to XtraDB Cluster 2014 Edition Migrating to XtraDB Cluster 2014 Edition Jay Janssen Managing Consultant Overview of XtraDB Cluster Percona Server + Galera Cluster of Innodb nodes Readable and Writable Virtually Synchronous All data

More information

How to get MySQL to fail

How to get MySQL to fail Snow B.V. Feb 3, 2013 Introduction We all know we shouldn t press the button... Introduction We all know we shouldn t press the button... but we all want to try. Do you know? Do you know what happens if

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

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

Research on Load Balancing and Database Replication based on Linux

Research on Load Balancing and Database Replication based on Linux Joint International Information Technology, Mechanical and Electronic Engineering Conference (JIMEC 2016) Research on Load Balancing and Database Replication based on Linux Ou Li*, Yan Chen, Taoying Li

More information

Split your database. Nicolai Plum Booking.com Database Engineering

Split your database. Nicolai Plum Booking.com Database Engineering Split your database Nicolai Plum Booking.com Database Engineering Before 2 After 3 Why? Size Query time, query latency conflicting workloads Business or architecture reasons Regulatory compliance Easier

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

Move Amazon RDS MySQL Databases to Amazon VPC using Amazon EC2 ClassicLink and Read Replicas

Move Amazon RDS MySQL Databases to Amazon VPC using Amazon EC2 ClassicLink and Read Replicas Move Amazon RDS MySQL Databases to Amazon VPC using Amazon EC2 ClassicLink and Read Replicas July 2017 2017, Amazon Web Services, Inc. or its affiliates. All rights reserved. Notices This document is provided

More information

Cisco Prime Network Registrar IPAM MySQL Database Replication Guide

Cisco Prime Network Registrar IPAM MySQL Database Replication Guide Cisco Prime Network Registrar IPAM 8.1.3 MySQL Database Replication Guide Americas Headquarters Cisco Systems, Inc. 170 West Tasman Drive San Jose, CA 95134-1706 USA http://www.cisco.com Tel: 408 526-4000

More information

How to Backup at Petabyte Scale When Every Transaction Counts

How to Backup at Petabyte Scale When Every Transaction Counts How to Backup at Petabyte Scale When Every Transaction Counts Karoly Nagy OUR GLOBALLY DISTRIBUTED TEAM DUBLIN, SAN FRANCISCO, SEATTLE & MALTA FILE, SYNC & SHARE BIGGEST DATABASES TODAY SERVER FILE JOURNAL

More information

Why we re excited about MySQL 8

Why we re excited about MySQL 8 Why we re excited about MySQL 8 Practical Look for Devs and Ops Peter Zaitsev, CEO, Percona February 4nd, 2018 FOSDEM 1 In the Presentation Practical view on MySQL 8 Exciting things for Devs Exciting things

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

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

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

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

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

Rick Stehno Principle Product Marketing Engineer / DBA. Replicated Database

Rick Stehno Principle Product Marketing Engineer / DBA. Replicated Database LSI Nytro WarpDrive Acceleration Card Increases Performance of an Oracle MySQL Replicated Database Rick Stehno Principle Product Marketing Engineer / DBA SYNOPSIS This document is a guide to help increase

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

Percona XtraDB Cluster 5.7 Enhancements Performance, Security, and More

Percona XtraDB Cluster 5.7 Enhancements Performance, Security, and More Percona XtraDB Cluster 5.7 Enhancements Performance, Security, and More Michael Coburn, Product Manager, PMM Percona Live Dublin 2017 1 Your Presenter Product Manager for PMM (Percona Monitoring and Management)

More information

Percona Xtrabackup: Hot Backup Solution for MySQL

Percona Xtrabackup: Hot Backup Solution for MySQL Percona Xtrabackup: Hot Backup Solution for MySQL Martin Arrieta February 2013 Agenda 1.Why backups? 2.Different options 3.Why Percona Xtrabackup 4.Installation 5.How it works? 6.Backup examples 7.Backup

More information

MySQL Architecture Design Patterns for Performance, Scalability, and Availability

MySQL Architecture Design Patterns for Performance, Scalability, and Availability MySQL Architecture Design Patterns for Performance, Scalability, and Availability Brian Miezejewski Principal Manager Consulting Alexander Rubin Principal Consultant Agenda HA and

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

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

MySQL 8.0: Atomic DDLs Implementation and Impact

MySQL 8.0: Atomic DDLs Implementation and Impact MySQL 8.0: Atomic DDLs Implementation and Impact Ståle Deraas, Senior Development Manager Oracle, MySQL 26 Sept 2017 Copyright 2017, Oracle and/or its its affiliates. All All rights reserved. Safe Harbor

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

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

MySQL High Availability. Michael Messina Senior Managing Consultant, Rolta-AdvizeX /

MySQL High Availability. Michael Messina Senior Managing Consultant, Rolta-AdvizeX / MySQL High Availability Michael Messina Senior Managing Consultant, Rolta-AdvizeX mmessina@advizex.com / mike.messina@rolta.com Introduction Michael Messina Senior Managing Consultant Rolta-AdvizeX, Working

More information

MySQL Architecture and Components Guide

MySQL Architecture and Components Guide Guide This book contains the following, MySQL Physical Architecture MySQL Logical Architecture Storage Engines overview SQL Query execution InnoDB Storage Engine MySQL 5.7 References: MySQL 5.7 Reference

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

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

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

Binlog Servers at Booking.com. Jean-François Gagné jeanfrancois DOT gagne AT booking.com

Binlog Servers at Booking.com. Jean-François Gagné jeanfrancois DOT gagne AT booking.com Binlog Servers at Booking.com Jean-François Gagné jeanfrancois DOT gagne AT booking.com Presented at Percona Live Amsterdam 2015 Booking.com 1 Booking.com Based in Amsterdam since 1996 Online Hotel and

More information