Záloha MySQL pomocí scriptu

Kamil Pošvic 31. 5. 2011

Na serveru Howtoforge.com vyšel návod na možnou zálohu vaší databáze MySQL pomocí scriptu. Zazálohuje každou tabulku pro každou databázi zvlášť v podobě komprimovaného archivu.

Script také zohledňuje dobu archivace starších verzí dle vašeho nastavení. Můžete si tak nastavit kolik dní zpětně budete mít možnost dohledat změny. Součástí návodu je i postup zpětné obnovy ze zálohy.

Našli jste v článku chybu?
  • 31. 5. 2011 14:37

    qwerty (neregistrovaný) 194.160.41.---

    Zdravim,

    zbezne som pozrel na ten skript a zda sa mi, ze musi byt priamo v nom zapisane aj heslo k db, ktore sa pouziva ako parameter mysql* prikazov. Niekde som cital, ze nie je bezpecne zadavat heslo ako parameter, lebo ho je mozne pocas kratkej chvile vidiet cez /proc. Ja to robim tak, ze heslo pre backup usera mam v subore .my.cnf. Ale pravdu povediac neviem, ci je to bezpecnejsie a ci je v tom vobec nejaky rozdiel. Mozno by tu vedel do toho niekto vniest trochu viac svetla :-).

  • 31. 5. 2011 16:08

    Ondřej Tůma

    Přiznám se že sám mám heslo přímo ve scriptu, a bezpečnější je nejspíš heslo v .my.cnf pokud ho nepřečte nikdo jiný, než majitel souboru (nějaký backup user).

    Rozhodně ale doporučuji vytvořit speciálního backup mysql uživatele, který bude mít práva pouze ke čtení. Případný útočník sice "získá data, ale nebude je moci změnit".

  • 31. 5. 2011 19:15

    srigi

    Skript som presiel len zbezne, ale principilane ma zaujima: Ked mam webapp s kopou paralelnych userov, ako mi takyto sekvencny skript zaisti konzistenciu FK's pocas zalohovania. Ak sa prva tabulka dumpne v case T a posledna v case T+100 napr. a pocas tejto doby niekde doslo k INSERT, nemozem predsa take data obnovit.

  • 2. 6. 2011 10:01

    Wiro (neregistrovaný) ---.1art.cz

    Nijako,

    script dumpuje tabulku po tabulke. Nikde specificky nenastavuje lock celej databazy takze sa by default lockne len tabulka, ktora sa aktualne dumpuje.

    V pripade, ze dojde k insertu a nejakej funkcii cez viac tabuliek bude to v danej chvili problem.

    Dany script nieje vhodny na zalohovanie viac vytazenych databaz. Locknutie tabulky alebo aj celej databazy na celu dobu dumpu je casto pri vacsich aplikaciach nemozne, pretoze to sposobi defakto vypadok funkcionality na celu dobu zalohovania.

    U zatazenejsich databazi sa skor pouziva lvm snapshotovanie, podporuje to napriklad mysql-zrm zalohovanie. Lockne celu mysql ale len na dobu vytvarania snapshotu co je cca 1s, nasledne odlockuje a z vytvoreneho snapshotu odlieva data ktore su "zmrazene".

    V nasadeni kde sa netoleruje ani vypadok 1s sa zas pouzivaju offline replikacne servery ktore sa na dobu zalohovania zastavia a po zalohovani si doreplikuju to co sa zmenilo.

  • 31. 5. 2011 21:00

    vks

    tak to je jeste hloupejsi nez jsem cekal.
    po nahlednuti na kod me prekvapilo, ze se nekdo pokousi o neco takhle hloupeho.

    cekal jsem nejakou aplikaci v jazyce C, nebo v nejakem skriptovacim jazyce, ktery se k tomuto ucelu pouziva, a bude se pouzivat api mysql.

    dale bych cekal, ze mezi mysql utilitama bude nejaký uz hotový tool, ktery bude schopny udelat jednoduse dump s ohlidanim konzistence dat.

    OT: nechapu, proč phpkaři stále používají tak hloupý databázový systém.

  • 1. 6. 2011 2:59

    andrej (neregistrovaný) 84.245.68.---

    backup:
    mysqldump -u [username] -p [databasename] > [databasename].sql

    restore (predpoklada prazdnu databazu [databasename]):
    mysql -u [username] -p [databasename] < [databasename].sql

    password sa v oboch pripadoch zadava cez konzolu. pre scriptovanie je nutne zadat ho do konfigu ktory bude
    rw- --- --- root root

120na80.cz: I tuto vodu můžete pít

I tuto vodu můžete pít

Vitalia.cz: Petra Pospěchová: Na túrách bodne desinfekční panák

Petra Pospěchová: Na túrách bodne desinfekční panák

Měšec.cz: TEST: Vyzkoušeli jsme pražské taxikáře

TEST: Vyzkoušeli jsme pražské taxikáře

Měšec.cz: Udali ho na nelegální software a přišla Policie

Udali ho na nelegální software a přišla Policie

Podnikatel.cz: Polská vejce na českém pultu Albertu

Polská vejce na českém pultu Albertu

Měšec.cz: Do ostravské MHD bez jízdenky. Stačí vaše karta

Do ostravské MHD bez jízdenky. Stačí vaše karta

Měšec.cz: Kurzy platebních karet: vyplatí se platit? (TEST)

Kurzy platebních karet: vyplatí se platit? (TEST)

DigiZone.cz: Markíza HD a Dajto? U Digi TV asi minulost

Markíza HD a Dajto? U Digi TV asi minulost

Vitalia.cz: Bio vejce nepoznají ani veterináři

Bio vejce nepoznají ani veterináři

Měšec.cz: Se stavebkem k soudu už (většinou) nemusíte

Se stavebkem k soudu už (většinou) nemusíte

Lupa.cz: eIDAS: Nepřehnali jsme to s výjimkami?

eIDAS: Nepřehnali jsme to s výjimkami?

Podnikatel.cz: Účtenky v rámci EET? Klidně emailem

Účtenky v rámci EET? Klidně emailem

DigiZone.cz: Oživení ekonomiky by mělo navýšit reklamu

Oživení ekonomiky by mělo navýšit reklamu

Měšec.cz: Investice do drahých kovů - znáte základní chyby?

Investice do drahých kovů - znáte základní chyby?

Měšec.cz: Platíme NFC mobilem. Konečně to funguje!

Platíme NFC mobilem. Konečně to funguje!

Vitalia.cz: Pepsi Cola mění sirup za cukr

Pepsi Cola mění sirup za cukr

Lupa.cz: V Praze se otevřel první podnik s virtuální realitou

V Praze se otevřel první podnik s virtuální realitou

Podnikatel.cz: Daň z nemovitosti? Změny budou v říjnu

Daň z nemovitosti? Změny budou v říjnu

Lupa.cz: Japonská invaze. Proč SoftBank kupuje ARM?

Japonská invaze. Proč SoftBank kupuje ARM?

Měšec.cz: Test: Výběry z bankomatů v cizině a kurzy

Test: Výběry z bankomatů v cizině a kurzy