V předchozích dvou dílech této krátké blogové série jsme zatím probrali několik možností, které mohou ovlivnit čas a velikost zálohy. Probrali jsme různé možnosti komprese a nastavení související s omezením síťového přenosu, pokud budete streamovat data z uzlu do hostitelského řadiče. Tentokrát bychom rádi vyzdvihli něco jiného – možnost pořizovat částečné zálohy pomocí MariaBackup. Nejprve si řekněme, co jsou částečné zálohy a jaké problémy s nimi souvisí.
Částečné zálohy
MariaBackup je zálohovací nástroj, který vytváří fyzické zálohy. To znamená, že zkopíruje data uložená v souborech na uzlu databáze do cílového umístění. Vytvoří konzistentní zálohu databáze, něco, co vám umožní obnovit vaše data do přesného časového okamžiku – do času, kdy byla záloha dokončena. Všechna data ve všech tabulkách a schématech budou konzistentní. To je docela důležité mít na paměti. Konzistentní zálohy lze použít k poskytování replik, spouštění Point-in-Time Restore a tak dále.
Na druhou stranu částečné zálohy jsou, no, částečné. Zálohuje se pouze podmnožina tabulek. To samozřejmě činí zálohu nekonzistentní. Nelze jej použít k vytvoření repliky nebo k obnovení dat do stejného časového bodu. Částečné zálohy mají stále své využití. Lze je použít k obnovení podmnožiny dat – místo obnovy celé zálohy můžete obnovit pouze jednu tabulku a poté extrahovat data, která potřebujete. Jistě, totéž můžete udělat s logickými zálohami, ale ty jsou poměrně pomalé a ve skutečnosti nejsou vhodné pro jakýkoli druh větších nasazení.
Nevýhodou je, že částečné zálohování není konzistentní v čase. To by mělo být zcela zřejmé, protože shromažďujeme pouze podmnožinu dat. Další výzvou je obnova – částečné zálohy nelze snadno obnovit přímo na produkčních systémech. Za prvé proto, že to není přímočaré, za druhé proto, že to není konzistentní. Nejbezpečnějším způsobem obnovení částečné zálohy by bylo obnovit ji na samostatném uzlu a poté pomocí mysqldump nebo SELECT INTO OUTFILE extrahovat požadovaná data.
Pojďme se podívat na možnosti, které nám ClusterControl poskytuje ohledně částečných záloh.
Částečné zálohy v ClusterControl
Za prvé, částečné zálohy se ve výchozím nastavení nepoužívají, musíte výslovně povolit. Poté se zobrazí sada možností, která nám umožní vybrat, co chceme zálohovat. Můžeme si vybrat konkrétní schéma nebo sadu tabulek. Můžeme udělat zálohu všech tabulek kromě některých nebo můžeme jen říct, že chceme zálohovat tabulky A, B a C.
Autor fotografiePopis fotografieSamozřejmě, když přejdete do rozbalovací nabídky, zobrazit všechny databáze a všechny tabulky uvedené k výběru.
Vybrali jsme některé tabulky a schémata a spustíme tuto zálohu nyní. Samozřejmě, pokud to chcete, můžete naplánovat částečné zálohy úplně stejným způsobem jako normální.
Na druhé obrazovce můžeme nakonfigurovat mariabackup podle našich představ, stejně jako my vysvětleno v našich předchozích příspěvcích na blogu. To je vše, klikněte na tlačítko Vytvořit zálohu a proces se spustí.
Obnovení částečné zálohy v ClusterControl
Jakmile bude záloha připravena, bude viditelná v seznamu záloh.
Vidíme, že jde o částečnou zálohu, protože existuje seznam schémat které jsou v něm zahrnuty.
Když se pokoušíme obnovit částečnou zálohu v clusteru asynchronní replikace, prezentovány se dvěma možnostmi. Obnovte na uzlu a obnovte a ověřte na samostatném hostiteli. První jmenovaný rozhodně není něco, co bychom chtěli udělat, protože by to vymazalo některá data, která v záloze nemáme. Druhá možnost na druhou stranu umožňuje nasadit samostatný uzel a obnovit na něm zálohu.
Vše, co musíme udělat, je vybrat název hostitele, který je dostupný SSH od ClusterControl a zajistěte, aby se po obnovení zálohy nezastavil. To nám umožní obnovit částečnou zálohu a poté k ní přistupovat, abychom mohli extrahovat jakýkoli druh dat, který můžeme chtít.
Doufáme, že vám tento krátký blog poskytne přehled o tom, jak vám ClusterControl umožňuje provádět částečné zálohy, jaké jsou případy použití a jak je můžete bezpečným způsobem obnovit.