MySQL (52) - A co zálohování?
... není to tak jednoduché, jak jste čekali. Nebo snad ano?
30.12.2005 06:00 |
Petr Zajíc
| Články autora
| přečteno 18623×
Již jsme se podívali na zoubek všem podstatným změnám, které přináší
pětková verze databáze MySQL. Takže se teď s klidným svědomím můžeme
věnovat zase trochu obecněji platným tématům. Jinými slovy, u
následujících dílů seriálu si přijdou na své i uživatelé starších verzí
MySQL. Řeč dnes bude o zálohování; a protože toto téma si to zaslouží,
bude to spíše teoretický rozbor toho proč, co, kdy, kdo a jak má (může)
zálohovat. Jak uvidíme, celé téma je dost rozsáhlé.
Zálohování dat
Je naprosto samozřejmé, že dříve či později narazíte při práci s
libovolnou databází na problém zálohování dat. Typická databázová
aplikace ukládá drtivou většinu svých dat (ne-li všechna) právě
do databáze a přijít o ně může znamenat naprostou katastrofu. Problém
se nevyhýbá ani MySQL - i zde se bude muset zálohování nějak řešit.
Dnešní zamyšlení nám ale má pomoci uvědomit si, že různé aspekty
zálohování vyžadují různý přístup a že ne vždy rozumíme pod výrazem
zálohování totéž.
Proč zálohovat
Tato zdánlivě jednoduchá otázka má více odpovědí. Zálohovat
můžete:
- Abyste nepřišli o data, nebo abyste přišli o co nejméně dat. V
případě poruchy hardware pak můžete obnovit data z nějaké zálohy.
- Abyste mohli čelit útokům - jestliže se někdo pokusí databázi
změnit nebo odstranit, vždy máte "bod návratu", data, která můžete
nahradit.
- Proto, že databázi chcete chcete zkopírovat nebo přesunout na
jiný stroj nebo systém. To může být potřeba z nejrůznějších důvodů -
vývojem počínaje a výměnou hardware konče.
- Jako součást dokumentace - technická zpráva k projektu může
například obsahovat popis databáze nebo vzorek nějakých dat. Taková
(třeba i malá) sada dat může sloužit k testování či proto, aby se v
projektu vyznali i jiní.
Jistě by se našly i další důvody. Uvádím to celé proto, abyste si
uvědomili, že potřeba zálohování může pramenit z kdečeho a postupy se
pak mohou lišit.
Co zálohovat
"Zálohování databáze" je široký pojem, možná až moc. V zásadě můžete
zálohovat:
- Strukturu databáze (tedy definici jednotlivých sloupců tabulek)
- Samotná data
- Strukturu a data
- Část dat (jen související tabulky apod.)
- Celou databázi (včetně existujících indexů a podobně)
- Celý server (více databází)
Mezi jednotlivými body jsou jemné kvalitativní rozdíly. Není
například pravda, že zálohovat "strukturu a data" znamená zálohovat
"celou databázi". Kromě dat totiž databáze může obsahovat i například
indexy - a ty můžete a nemusíte chtít uchovat. Připomeňme si, že indexy
se dají podle potřeby rušit a vytvářet relativně nezávisle na datech.
Rovněž můžete a nemusíte chtít zachovat definici uživatelsky
definovaných funkcí, uložených procedur, spouští a pohledů.
Kdy zálohovat
Třebaže se Vám to možná bude zdát zvláštní, tak vězte, že tohle je
jedna z nejtěžších otázek při správě databází. Na jednu stranu budou
existovat (relativně) bezcenná data, která možná nebudete chtít
zálohovat nikdy. Mám na mysli třeba staré přístupové protokoly. Na
druhou stranu existují data tak cenná, že byste je
chtěli zálohovat téměř po každé operaci. Protože zálohování může
nepříznivě ovlivnit výkon systému, souběžnost práce s databází a může
zabrat
docela dost místa na disku, je v praxi běžně k vidění kompromis mezi
oběma extrémy. Ten kompromis může být následující:
- výkon a souběžnost - aby zálohování mělo co nejmenší dopad na
výkon systému, provádí se v době, kdy je databáze nejméně zatěžována
(například v noci). Někdy je jednoduché určit, kdy je zatížení
nejmenší, jindy je to rébus; takže uvedenou zásadu nelze chápat
striktně.
- místo na disku - toto se řeší dvěma způsoby. Jednak tím, že se
zálohy umisťují na různá místa či zařízení (CD/DVD disky, jiný oddíl
HDD a podobně)
a jednak tím, že existují plné a inkrementální zálohy
Kdo zálohuje?
I to je na pováženou. Zálohovat samozřejmě může:
- Uživatel systému nebo aplikace
- Správce systému (např. správce serveru)
- Počítač pomocí nějakých naplánovaných úloh (cron) či při splnění
nějaké podmínky (čas od poslední zálohy, velikost dat a podobně)
Protože sám vyvíjím databázové aplikace, dovolte, abych tu nastínil
jednu zásadu: Ponechat zálohování
na uživateli je cesta k maléru. Průměrný uživatel zkrátka data
zálohovat nebude, a pokud ano
tak jen proto, že v minulosti již o nějaká ta data přišel. To
samozřejmě neznamená, že bychom uživatelům neměli umožnit zálohování
provést; spíše to znamená, že bychom se na to neměli v žádném případě
spolehnout.
Správce serveru naproti tomu většinou data zálohovat bude, zejména pokud je provoz
databázového serveru součástí placených služeb. V případě hostingu s
databází bude například jistě v zájmu providera, aby vaše data ochránil
jak před zneužitím, tak i před ztrátou. Pokud si databázový server
spravujete sami, asi taky budete chtít data nějakým způsobem ochránit.
Konečně, existuje celá řada více či méně povedených nástrojů a
utilit pro zálohování dat, které mohou fungovat bez zásahu uživatele, a
které navíc mohou mít jednu či více z následujících schopností:
- komprimace záloh
- odesílání záloh "někam" (FTP, SSH apod.)
- vytváření protokolů o zálohování
- notifikace pro případ selhání systému zálohování
- spolupráce více zálohovacích systémů nebo zařízení
- uživatelské rozhraní pro konfiguraci
Jak zálohovat
Tomu se budeme podrobně věnovat příště. Teď je potřeba říci, že
dostupné prostředky se pochopitelně budou lišit případ od případu.
Jestliže jste správcem serveru s právy superuživatele, máte samozřejmě
k dispozici mnohem více možností než pokud máte na témže serveru
hosting s jednou databází. Rovněž je třeba rozlišovat podle množství
zálohovaných dat: pokud databáze denně přijme deset řádků do dvou
tabulek, bude zálohování zcela jistě jednodušší než pro databázi s
desítkami tisíc změn denně.
Doufám, že jsem Vás přesvědčil, že zálohování se nedá odbýt jedním
řádkem kódu a že je potřeba tyto věci znát. Pokud ano, můžete se těšit
na další díl seriálu, který bude zaměřen již více na praxi.
Verze pro tisk
|
Nejsou žádné diskuzní příspěvky u dané položky.
Příspívat do diskuze mohou pouze registrovaní uživatelé.
|
|

Vyhledávání software

Vyhledávání článků
28.11.2018 23:56 /František Kučera Prosincový sraz spolku OpenAlt se koná ve středu 5.12.2018 od 16:00 na adrese Zikova 1903/4, Praha 6. Tentokrát navštívíme organizaci CESNET. Na programu jsou dvě přednášky: Distribuované úložiště Ceph (Michal Strnad) a Plně šifrovaný disk na moderním systému (Ondřej Caletka). Následně se přesuneme do některé z nedalekých restaurací, kde budeme pokračovat v diskusi.
Komentářů: 1
12.11.2018 21:28 /Redakce Linuxsoft.cz 22. listopadu 2018 se koná v Praze na Karlově náměstí již pátý ročník konference s tématem Datová centra pro business, která nabídne odpovědi na aktuální a často řešené otázky: Jaké jsou aktuální trendy v oblasti datových center a jak je optimálně využít pro vlastní prospěch? Jak si zajistit odpovídající služby datových center? Podle jakých kritérií vybírat dodavatele služeb? Jak volit vhodné součásti infrastruktury při budování či rozšiřování vlastního datového centra? Jak efektivně datové centrum spravovat? Jak co nejlépe eliminovat možná rizika? apod. Příznivci LinuxSoftu mohou při registraci uplatnit kód LIN350, který jim přinese zvýhodněné vstupné s 50% slevou.
Přidat komentář
6.11.2018 2:04 /František Kučera Říjnový pražský sraz spolku OpenAlt se koná v listopadu – již tento čtvrtek – 8. 11. 2018 od 18:00 v Radegastovně Perón (Stroupežnického 20, Praha 5). Tentokrát bez oficiální přednášky, ale zato s dobrým jídlem a pivem – volná diskuse na téma umění a technologie, IoT, CNC, svobodný software, hardware a další hračky.
Přidat komentář
4.10.2018 21:30 /Ondřej Čečák LinuxDays 2018 již tento víkend, registrace je otevřená.
Přidat komentář
18.9.2018 23:30 /František Kučera Zářijový pražský sraz spolku OpenAlt se koná již tento čtvrtek – 20. 9. 2018 od 18:00 v Radegastovně Perón (Stroupežnického 20, Praha 5). Tentokrát bez oficiální přednášky, ale zato s dobrým jídlem a pivem – volná diskuse na téma IoT, CNC, svobodný software, hardware a další hračky.
Přidat komentář
9.9.2018 14:15 /Redakce Linuxsoft.cz 20.9.2018 proběhne v pražském Kongresovém centru Vavruška konference Mobilní řešení pro business.
Návštěvníci si vyslechnou mimo jiné přednášky na témata: Nejdůležitější aktuální trendy v oblasti mobilních technologií, správa a zabezpečení mobilních zařízení ve firmách, jak mobilně přistupovat k informačnímu systému firmy, kdy se vyplatí používat odolná mobilní zařízení nebo jak zabezpečit mobilní komunikaci.
Přidat komentář
12.8.2018 16:58 /František Kučera Srpnový pražský sraz spolku OpenAlt se koná ve čtvrtek – 16. 8. 2018 od 19:00 v Kavárně Ideál (Sázavská 30, Praha), kde máme rezervovaný salonek. Tentokrát jsou tématem srazu databáze prezentaci svého projektu si pro nás připravil Standa Dzik. Dále bude prostor, abychom probrali nápady na využití IoT a sítě The Things Network, případně další témata.
Přidat komentář
16.7.2018 1:05 /František Kučera Červencový pražský sraz spolku OpenAlt se koná již tento čtvrtek – 19. 7. 2018 od 18:00 v Kavárně Ideál (Sázavská 30, Praha), kde máme rezervovaný salonek. Tentokrát bude přednáška na téma: automatizační nástroj Ansible, kterou si připravil Martin Vicián.
Přidat komentář
Více ...
Přidat zprávičku
 Poslední diskuze
31.7.2023 14:13 /
Linda Graham iPhone Services
30.11.2022 9:32 /
Kyle McDermott Hosting download unavailable
13.12.2018 10:57 /
Jan Mareš Re: zavináč
2.12.2018 23:56 /
František Kučera Sraz
5.10.2018 17:12 /
Jakub Kuljovsky Re: Jaký kurz a software by jste doporučili pro začínajcího kodéra?
Více ...
|