MySQL Backup

  • View
    966

  • Download
    4

Embed Size (px)

DESCRIPTION

MySQL has 4 1/2 backup methods. In this presentation we look at those and discuss their advantages and disadvantages...

Text of MySQL Backup

  • 1.www.fromdual.comMySQL Backup und Restore DOAG Konferenz 2013 Nrnberg Oli Sennhauser Senior MySQL Consultant, FromDual GmbHoli.sennhauser@fromdual.com1 / 22

2. ber FromDual GmbH www.fromdual.comFromDual bietet neutral und unabhngig: Beratung fr MySQL und GaleraSupport fr MySQL und GaleraRemote-DBA DienstleistungenMySQL SchulungenPartner der Open Database Alliance (ODBA.org)Oracle Silver Partner (OPN)www.fromdual.com 2 / 22 3. Unsere Kundenwww.fromdual.com3 / 22 4. Inhaltwww.fromdual.comMySQL Backup Etwas Backup Theorie Cold Backup mysqldump LVM Snapshot Xtrabackup / MEB M/S Replikation Restore Point-in-Time-Recovery4 / 22 5. Warum Backup? Backups ist fr Mdchen!www.fromdual.comWir haben HA, brauchen daher kein Backup! Hardware kaputt (ganz schnell tot)Was passiert, wenn: CPU, RAM, I/O Kontroller langsam stirbt? Eure Entwickler folgendes tun: UPDATEemployeeSETbonus=0;WHEREid=42;Wer hat ein Backup-Prozess implementiert?Wie macht Ihr Backup?Wer testet den Restore Prozess berhaupt/manchmal/regelmssig? 5 / 22 6. Logisch vs. Physisch 2 unterschiedliche Konzepte (unabhngig von MySQL) Logisches Backup mysqldump menschenlesbarwww.fromdual.comJede Row wird angelangt!Physisches Backup Datei-KopieLVM Snapshot + Datei-KopieXtrabackup, MySQL Enterprise Backup (MEB) Binrdaten, Block- oder Datei-weises Kopieren 6 / 22 7. Backup-Variantenwww.fromdual.comMySQL kennt 4 Backup-Varianten: Dateien kopieren bei gestoppter DB (phys.)mysqldump im laufenden Betrieb (log.)LVM Snapshot quasi im laufenden Betrieb (phys.) Xtrabackup / MEB im laufenden Betrieb (phys.) Master/Slave Replikation siehe Variante 1 - 4 7 / 22 8. MySQL Cold Backupwww.fromdual.comPhysisches Datei-Kopieren bei gestoppter DBVorgehen: Datenbank startenEigenschaften: Datenbank stoppen cpr$datadir/backupSehr einfach, immer konsistent, Service NICHT verfgbar, Wartungsfenster erforderlich, schnell bei grossen Datenmengen, kann mit LVM kombiniert werden, schneller Restore.Demo 8 / 22 9. mysqldump Logisches Datenbank-Backup im laufenden Betrieb InnoDB: blockierungsfreiMyISAM: read-onlyGemisch MyISAMVorgehen: mysqldumpalldatabases{singletransaction| lockalltables}...>/backup/full_dump.sqlEigenschaften: www.fromdual.comSehr einfach, im laufenden Betrieb (bei InnoDB), blockierend fr Schreibzugriffe (MyISAM), NICHT geeignet fr grosse Datenmengen, langsamer Restore, inkonsistentes Backup mglichDemo 9 / 22 10. mysqldumpwww.fromdual.comcp/etc/my.cnf$BACKUP_DIR/my_$BACKUP_TIMESTAMP.cnf #forMyISAM mysqldumpuser=rootalldatabasesflushprivilegeslockalltables masterdata=1flushlogstriggersroutinesevents hexblob>$BACKUP_DIR/full_dump_$BACKUP_TIMESTAMP.sql #forInnoDB mysqldumpuser=rootalldatabasesflushprivilegessingletransaction masterdata=1flushlogstriggersroutinesevents hexblob>$BACKUP_DIR/full_dump_$BACKUP_TIMESTAMP.sql10 / 22 11. LVM Snapshot Physisches quasi-hot Backup im laufenden Betrieb Start snapshot UNLOCKTABLES; Etwas komplizierter, immer Konsistent, ganz kurze Schreibblockierung erforderlich, schnell bei grossen Datenmengen, schneller Restore, InnoDB Crash-Recovery erforderlich.Tool: FLUSHTABLESWITHREADLOCK;Eigenschaften: Blockiert ganz kurz frs SchreibenVorgehen: www.fromdual.commylvmbackup (http://www.lenzg.net/mylvmbackup/)Demo 11 / 22 12. Xtrabackup / MEB Xtrabackup / MySQL Enterprise Backupwww.fromdual.comPhysisches Backup im laufenden Betrieb InnoDB: blockierungsfreiBasiert auf InnoDB Recovery Mechanismus MyISAM: read-onlyVorgehen: innobackupex/backup/ innobackupexapplylog/backup/Eigenschaften: Recht einfach, immer Konsistent, im laufenden Betrieb (bei InnoDB), blockierend fr Schreibzugriffe (MyISAM), schnell bei grossen Datenmengen, schneller Restore.Demo 12 / 22 13. Master/Slave Replikationwww.fromdual.comApplikationMasterasyncBackupSlaveDatenkonsistenz auf Slave?13 / 22 14. Restore www.fromdual.com2 Varianten (Abhngig vom Backup): a) Restore von Dump mysqldumpb) Restore von Datei-Kopien Cold BackupLVM SnapshotXtrabackup/MEB 14 / 22 15. Restore von Dump Backup erstellt mit mysqldumpwww.fromdual.comVorgehen: mysql_install_dbdatadir=/var/lib/mysqlservicemysqlstartrmrf$datadirmysqluroot/dev/nullStrukur Dump von Zeit zu Zeit erstellen. Ist nicht sooo teuer! mysqldumpalldatabasesnodata Ins VCS einchecken?Restore: Wir fangen an mit ... einem Backup!Weitere Tipps aus Eurem Erfahrungsschatz? 19 / 22 20. Backup-Testwww.fromdual.comEntwicklungProduktion ProdQATestDevbckDBAnchtlicher Restore TestDB1:ja TestDB2:nein DevDBa:ja DevDBb:nein DevDBc:jaEntwickler20 / 22 21. Wir suchen noch:www.fromdual.comErfahrene/r MySQL DBA / Open-Source Enthusiast/in fr MySQL Support / remoteDBA undGuter C++ Entwickler/in (mit Affinitt zu DBs, MySQL, Replikation und Cluster) 21 / 22 22. Q&Awww.fromdual.comFragen ? Diskussion? Wir haben Zeit fr ein persnliches Gesprch... FromDual bietet neutral und unabhngig: BeratungRemote-DBASupport fr MySQL, Galera, Percona Server und MariaDBSchulungwww.fromdual.com/presentations 22 / 22