FROSCON 2011: MySQL Replication

  • Published on
    09-May-2015

  • View
    673

  • Download
    4

Embed Size (px)

Transcript

  • 1.MySQL Replikation fr EinsteigerFrOSCon 2011, St. AugustinOli Sennhauser Senior MySQL Consultant at FromDual GmbH oli.sennhauser@fromdual.comwww.fromdual.com1

2. ber FromDual GmbH FromDual bietet neutral und unabhngig: Beratung fr MySQL (vor Ort und remote) Remote-DBA Dienstleistungen / MySQL Betrieb Premium Support (ex. MySQL Basic und Silber) Schulung fr MySQL Consulting Partner der Open Database Alliance(ODBA.org) Oracle Silber Partner (OPN) Mehr Informationen unter: http://www.fromdual.com www.fromdual.com2 3. Inhalt MySQL Replikation Was ist Replikation? Wie funktioniert MySQL Replikation? Wie wird Replikation aufgesetzt? Wann brauche ich MySQL Replikation? Neuerungen in 5.1, 5.5 und 5.6 Varianten der Replikationwww.fromdual.com 3 4. Was ist Replikation? Daten von einer Datenbank auf eine odermehrere andere Datenbanken weiterreichen:ApplikationMaster Slave Daten = UPDATE, INSERT, DELETE, ... (= DMLStatements) oder (binre) Eventswww.fromdual.com 4 5. MySQL Replikation Wie funktioniert die MySQL Replikation?Applikationbinlog dump IO_threadthread master.info Initialer DumpSQL_threadMaster asynchronSlave relay-log.infobinary log writer thread... bin-log.m bin-log.n... relay-log.m relay-log.n bin-log.index www.fromdual.com 5 6. Vorbereiten des Masters Auf dem Master im my.cnf: Binary log einschalten:logbin=binlog Server ID setzen:server_id=42 Muss im Replikations-Setup Unique sein! Server neu starten (downtime!)www.fromdual.com6 7. User anlegen und Dump ziehen Immer noch auf dem Master: Replikations-User anlegen:CREATEUSERreplication@192.168.1.%IDENTIFIEDBYsecret;GRANTREPLICATIONSLAVEON*.*TOreplication@192.168.1.%; Initialen konsistenten! Dump ziehen:mysqldumpalldatabasessingletransaction(lockalltables)masterdata>full_dump.sql www.fromdual.com 7 8. Aufsetzen des Slaves Neue Datenbank erstellen (2. Maschine)./scripts/mysql_install_dbdatadir=/var/lib/mysql Andere Server ID setzen: server_id=43 Slave auf seinen Master ansetzen: CHANGEMASTERTOmaster_host=192.168.1.42,master_port=3306,master_user=replication,master_password=secret; Initialen konsistenten Dump einspielen:mysqlurootbinlog.000001.dup Delayed ReplicationCHANGEMASTERTOMASTER_DELAY=n; Frher mkslavedelay (Maatkit) Neue Variablen: log_bin_basename und log_bin Aus den Oracle Labs: Multi-threaded Slave / Parallel Slave Multi-source Replikation? www.fromdual.com22 23. Varianten der Replikation Bianary Log fr Point-in-Time-Recovery Tungsten Replication Cluster Synchone Replikation mit Galerawww.fromdual.com 23 24. Point-in-Time-Recovery (PITR)ApplikationApplikation Applikationbinary log writer thread log_bin=on mysqld bin-log.1 bin-log.2 ... bin-log.n pos/time? full backup t www.fromdual.com24 25. Tungsten Replication Cluster Continuent (www.continuent.com) Master/Slave Replikation (asynchron) Basiert auf MySQL Binary Logs! Verfgbarkeit / Performance / Integritt Fr MySQL und PostgreSQL! Bentigt Java und Ruby Fhrt eine globale Transaktions-ID ein Multi-Source Replikation mglich! www.fromdual.com25 26. MySQL Replikationsarchitektur www.fromdual.com 26 27. Synchrone Replikation mittelsGalera Codership (www.codership.com) Synchrone Replikation Certification Based Replication, kein 2PC! Verfgbarkeit / Skalierbarkeit / transparent nderungen am MySQL Code notwendig! MySQL muss dazu gepatched und neukompiliert werden... Codership liefert fertige Binaries!www.fromdual.com 27 28. Galera Replication www.fromdual.com 28 29. Q&AFragen ?Diskussion?Wir haben noch Zeit fr persnliche und indviduelle Beratungen... www.fromdual.com 29

Recommended

View more >