[linux] MySQL zalohy

Marek Podmaka marki na marki-online.net
Pondělí Květen 18 16:08:05 CEST 2009


Cau,

Definuj vypadok.
Spomalenie servera tam bude vzdy, kedze sa jedna o zataz ci uz CPU
alebo disk IO. Spomalenie mysqldump zavisi od konkretnych databaz a
ich velkosti. Moze alebo nemusi vadit.

Inac to co som popisal sa vola Zero Downtime backup (ZDB) a rovnaky
princip pouziva napr. aj Oracle a DB2 - teda dat databazu do
konzistentneho stavu (moze trvat sekundu alebo pri obrovskych
databazach aj par minut), spravit snapshot (lvm alebo priamo na
diskovom poli), databazu uvolnit do normalnej prevadzky a snapshot
zalohovat. Pocas robenia snapshotu mas povolene iba SELECTy a vsetko
co chce modifikovat databazu musi cakat.

Dalsia otazka je na aky ucel si robis tie zalohy. Ci len ako backup v
pripade poskodenia databaz alebo ako moznost obnovy do hociktoreho
casu v minulosti (napr. spravis omylom DELETE TABLE a prides na to o 3
hodiny, tak sa vies vratit presne do momentu pred vykonanim tohto
prikazu). Vtedy sa pouziva binarny log mysql a zalohovat musis aj ten.

V tvojom pripade podla mna uplne staci mysqldump, s tym ze sa musis
trochu pohrat s parametrami - nerobit vsetky db naraz, nie ako jednu
tranzakciu (tvoj web v php pouziva tranzakcie?). Pripadne si
naskriptovat a robit kazdu tabulku osobite.

Monday, May 18, 2009, 15:35:30, warezman wrote:

> Neviem, ja by som to chcel zalohovat bez akehokolvek vypadku a kazdu
> db zvlast. Preto pouzitie lvm neni pre mna moc priatelne.



-- 
  bYE, Marki



Další informace o konferenci linux