Zaloha MySQL

Vladimir Naprstek vladimir.naprstek na prodeco.cz
Čtvrtek Listopad 4 12:27:10 CET 1999


Petr Snajdr wrote:

> Dobry den,
>    premyslim nad jednou takovou hezkou veci a to
> zalohovanim MySQL. Teoreticky priklad:
>
> DB: MySQL
> Databaze: nekolik tabulek o celkove velikosti treba
>        trebas 200 GB

> Jak takovou databazi zazalohovat?
>
> Nastinim problemy:
>
>        - kompletni zaloha databaze trva prilis dlouho (treba
>          nekolik desitek hodin)

Tak v tomto pripade jedine co Vam zbyva je delat zalohy o vikendech.
Pokud je db 24x7 pak nutne docasne vysazeni sluzby. Oracle toto resi
celkem pekne pomoci logu - viz dokumentace oracle.

>        - zastavit databazi z duvodu zalohy nelze

Pak je nutno se rozhodnout zastavit nebo zalohovat.

>        - pokud pobezi behem zalohovani
>          se take muze znacne zmenit DB

a) Zastavit -> zazalohovat -> spustit
b) V tabulkach muzete mit cas ulozeni zaznamu, pak lze celkem jednoduse
implementovat jednu plnou zalohu a nekolik inkrementalnich. zbyva jen
vyresit otazku smazanych zaznamu (treba logovanim SQL dotazu -
update.log).
c) mysqladmin flush-logs -> schovat update.log a potom v pripade potreby
z nej vysosat potrebne udaje. Budete-li toto delat primerene casto,
nebudou ty soubory ani moc velke.

> Otazka: Jak neco takoveho zazalohovat a jak
> to MySQL standardne resi. Zatim
>  v techto teoretickych uvahach jsem v bodu, ze
> nijak.

Podle dokumentace je mozno zalohovat pomoci mysqldump, zalohovanim
binarnich souboru databazi nebo SELECT INTO OUTFILE. Ja osobne jsem si
napsal perlovy skriptik, ktery zjisti vsechny databaze a pomoci
mysqldump je postupne vysmahne do souboru. Ovsem nemam 200GB dat...

--
Vladimir Naprstek
e-mail vladimir.naprstek na prodeco.cz





Další informace o konferenci Test