Oct 05 2011

mysqldump: nezapomínejte na uložené procedury!

Tag: MySQLJens @ 23:45

Pakliže někdy zálohujete MySQL databázi pomocí utility mysqldump a přitom používáte ve vaší databázi uložené procedury nebo funkce, pak určitě nezapomeňte přidat parametr --routines. Tento parametr zajistí, že výsledkem exportu budou nejen definice struktury tabulek a data, ale zároveň právě i uložené procedury a funkce vytvořené pomocí CREATE PROCEDURE a CREATE FUNCTION.

Je trochu s podivem, že mysqldump uložené procedury nezahrnuje do výchozího nastavení pro export, neboť např. TRIGGERy ve výchozím nastavení do výsledku exportu zahrnuje.

Aktualizujte si tedy vaše zálohovací skripty v tomto duchu:

mysqldump --routines [ostatní parametry] > [název souboru sql]

Více viz dokumentace:

2 komentáře k článku “mysqldump: nezapomínejte na uložené procedury!”

  1. pauci napsal:

    Este je mozne pridat defaultne nastavenie do my.cnf:

    [mysqldump]
    routines

  2. Jens napsal:

    Takto to mě vůbec nenapadlo, díky za tip!
    Každopádně takové řešení vyžaduje administrátorské oprávnění na editaci konfiguračního souboru což může být někdy problém.