Beruflich Dokumente
Kultur Dokumente
oli.sennhauser@fromdual.com
www.fromdual.com
Inhalt
MySQL Replikation HA Solutions
Scale-Out Read scale-out MySQL Replikation Replication set-up for HA Master-Master fail-over Active/passive Replikation Binary Cluster MySQLLog Formate Semi-Synchrone Replikation Replication Cluster Backup Methoden Storage-Engine-Replication Restore SE Replikation mit PBXT
www.fromdual.com
Neutrale und Hersteller unabhngige Beratung fr MySQL Support fr MySQL (7 x 24) Remote-DBA / MySQL Betrieb (wir betreiben Ihre MySQL DB!) Schulung und Workshops (DBA, Performance Tuning, ScaleOut, High Availability, MySQL Cluster) Consulting Partner der Open Database Alliance (ODBA.org) Oracle Silber Partner (OPN)
Wir sind:
http://www.fromdual.com
www.fromdual.com 3
Scale-Up
Scale-Out
4
www.fromdual.com
Load balancer
Application
master.info
IO_ thread
relay-log.info
Master
Slave
SQL_ thread
...
bin-log.m
bin-log.n
...
relay-log.m
relay-log.n
www.fromdual.com
Binary Log einschalten und Server ID setzen (erfordert Neutstart): #my.cnf [mysqld] log_bin=binary_log server_id=42
Einspielen des konsistenten Backups vom Master: mysqluroot<full_dump.sql berprfen ob auf dem Slave alles i.O. ist: SHOWSLAVESTATUS\G Slave starten: STARTSLAVE;
www.fromdual.com 8
Load balancer
Massives Scale-Out
M ... ... ... ... S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S 5s ... S S S ... S S ... S ...
Jetzt knnen sie auch erahnen wozu die BLACKHOLE SE gebraucht wird...
www.fromdual.com 10
Problem: Wenn Master kaputt geht, mssen alle Slaves neu gebaut werden... Aber es gibt Tricks: Tool von Yandex.ru (Petya Kohts):
www.fromdual.com
11
VIP
M1
M2
Slave 1
Slave 2
Slave 3
Slave Backup
Vorsicht beim Schreiben auf beide Master Man erhlt so NICHT mehr I/O-Durchsatz!
www.fromdual.com 12
hnliches Problem wie bei Master-Slave Replikation mit zustzlicher Komplexitt durch zirkulre Replikation Keine Konflikt-Detektion/Auflsung! Achtung: Wir sind asynchron! Tool:
www.fromdual.com
14
www.fromdual.com
15
Semi-Synchrone Replikation
Master
Slave
SQL_ thread
...
bin-log.m
bin-log.n
...
relay-log.m
relay-log.n
www.fromdual.com
16
Backup Methoden
www.fromdual.com
17
Backup Methoden
mysqldump Filesystem Kopie / mysqlhotcopy Snapshot mit LVM / btrfs InnoDB Hot Backup (ibbackup/xtrabackup) Backup Replikation Slave
www.fromdual.com
18
mysqldump
Charakteristik
Logisches Backup, hot/on-line, lokal oder remote, konsistent Einfach, lokal oder remote, Standard-Backup fr MySQL, konsistent, Strukturdump mglich Kann falsch gemacht werden, blockiert MyISAM Tabellen frs Schreiben, nicht geeignet fr sehr grosse Datenmengen, Restore-Zeiten!
www.fromdual.com 19
Vorteile
Nachteile
Charakteristik
Physisches Backup, hot, local Schneller Restore, konsistent Nur bedingt fr InnoDB geeignet, blockiert Tabellen fr Schreibzugriffe.
Vorteile
Nachteile
www.fromdual.com
20
Charakteristik
Physisches Backup, hot, lokal Sehr schnelle Backup Methode, ziemlich schnelles Restore, konsistent Bentigt root Rechte, etwas komplizierter und Hardware intensiver, mglicherweise gefhrlich mit InnoDB?
www.fromdual.com 21
Vorteile
Nachteile
Alle DB files mssen auf dem selben Logical Volume liegen (LV = Partition) Locken der Datenbank Erstellen eines Snapshots des Logical Volumes Unlocken der Datenbank Mounten des Snapshot Logical Volumes InnoDB Recovery testen Backup (tar, compress, tape) der Datenbank Files Lschen des Snapshot Logical Volumes Etwas kompliziert: mylvmsnapshot
www.fromdual.com 22
LVM device
copy-on-write
www.fromdual.com 23
Charakteristik
Physisches Backup, hot/on-line, lokal, konsistent, inkremental Schnelles Backup/Restore fr InnoDB Lst die MyISAM Probleme nicht
Vorteile
Nachteile
www.fromdual.com
24
Prepare (~recovery):
xtrabackuppreparetargetdir=...
Restore?
www.fromdual.com
25
Charakteristik
Logisches oder physisches backup, hot/on-line, konsitent Betrifft Master berhaupt nicht. Beste Methode aus Sicht des Masters. Braucht zustzliche Hardware (oder zumindest Ressourcen) Sicherstellen, dass Slave nicht driftet. Achtung: Wir erstellen ein Backup auf dem Slave: != Master
Vorteile
Nachteile
www.fromdual.com
26
Restore / Recovery
www.fromdual.com
27
Restore / Recovery
Restore der Daten oder der Tabellen oder den Files Auto-recovery der transaktionalen SE (InnoDB, PBXT, NDB) Point-in-Time-Recovery (PITR)
Point-in-Time-Recovery (PITR)
Application Application Application binary log writer thread
log_bin=on
mysqld
bin-log.1
bin-log.2
...
bin-log.n
t
www.fromdual.com 29
So lange Ihr Index in den Cache/Buffer passt ist es OK, aber wehe wenn nicht...! Man kann da etwas drum herum schummeln mit Fast Index Creation im InnoDB Plug-in oder MySQL 5.5...
www.fromdual.com
30
DBA
Developer
www.fromdual.com
31
MySQL Replikation ist nicht sehr schnell Man kann die Replikation leicht falsch aufsetzen / Fehler machen. Warum so kompliziert ber mind. 3 Threads und 2 Files? Die PBXT SE v2.0 implementiert Replikation auf Storage Engine Ebene:
www.fromdual.com 32
www.fromdual.com
33
www.fromdual.com
34
www.fromdual.com
35