Portál AbcLinuxu, 19. dubna 2024 04:50
pg_dump
, mysqldump
), což pro menší db stačí, tak tento dump potom stačí uložit na zálohovací server a je to. Napsat si na to skript je triviální.
Pokud máte nasazen snad libovolný zálohovací systém (backuppc
nebo tu baculu
), tak snad každý z nich má možnost spustit příkaz před zálohou a tedy tam si lze dát skript na ty dumpy.
Pro větší db už jsou dumpy celkem nevýhodné a je lepší nasadit streaming zálohování binárních logů. Výhodou je možnost obnovení db ke stavu těsně před crashem (tj na poslední potvrzenou transakci). Pro postgresql je to PITR (point in time recovery), nebo prográmek pgBarman, který to nasazení zjednodušuje.
Staci mi denni zalohy, asi nejlepe gzip dumpy, s rekneme max 2.tydenni historii.Tak pak nevím, co řešíš. Já dal před každou noční zálohou spustit příkaz
mysqldump --all-databases | gzip --rsyncable > databaze.gz
(TBH nevím jestli u dumpu DB rsyncable pomůže) a hotovo. Ale 50 GB mi na každodenní dumpování přijde už trošku dost.
u mysql/mariadb je dobré se podívat na význam parametrů --single-transaction a s tím související --skip-lock-tables umožňující backup produkčního stroje (jinak se na zámku zasekne produkční provoz).S tím, že je velmi nutné upozornit na to, že ne všechny mysql engine umí transakce. Takže bez zámků se ta db mění během zálohy a dump tedy není moc konzistentní. Obecná MySQL se dá afaik zálohovat jen s lockem a je tedy během zálohování zaseklá. U PostgreSQL si můžeš vesele dumpovat a máš jak konzistentní zálohu, tak i neustále dostupnout db pro klienty.
Tiskni Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.