Údržba databáze
Zde uvedeme několik doporučení správcům systému pro provádění údržby databáze, která je vhodná, zejména kvůli udržení rychlé odezvy systému. K udržení rychlé odezvy doporučujeme také provést optimalizaci serverů.
- Při povýšení verze je nanejvýš vhodné zkontrolovat, že automatické zálohování (batche, úloha Autoserveru apod.) funguje a že se zálohy řádně vytvářejí.
- Je též rozumné občas někde nanečisto prověřit obnovu zálohy a ověřit, zda vytvářené zálohy jsou funkční – tedy obnovitelné a použitelné. A to bez ohledu na to, jaký způsob zálohování je zvolen. Je vhodné při prověření zkontrolovat nejen to, že obnova doběhne do konce, ale také to, že obnovená databáze je plně funkční.
-
V případě používání databáze Firebird je vhodné občas provést zálohu a následnou obnovu (v rámci obnovy je vytvořena nová, optimalizovaná databáze) a nasazení takto obnovené databáze do produkčního prostředí. Při dlouhodobém používání a opakovaném updatování jedné databáze může docházet k postupné degradaci výkonu.
Nezáleží na tom, zda k zálohování využíváte pouze prostředky ABRA Gen nebo nativní databázový nástroj GBAK, Potřebnou optimalizaci zajistí oba způsoby.
Pokud k zálohování a obnově používáte nástroj GBAK, nezapomeňte, že při tomto způsobu zálohování musíte samostatně zazálohovat a obnovit také repozitoř. Viz Způsoby zálohování - porovnání.
V rámci zavedení inkrementálního update (od v. 10.02 vč.) nedochází s novou verzí programu k vytváření nové databáze. Je tedy třeba, aby administrátoři databází toto vzali v potaz a prováděli některé údržbové práce s databází ve své režii:
- Na Firebirdu docházelo vytvořením nové databáze automaticky k "očištění" tabulek od tzv. starých verzí řádků. Toto je nyní potřeba občas provést nástroji Firebird (gfix -sweep). Alternativou je již zmíněná občasná záloha a obnova (pomocí prostředků ABRA Gen nebo nástroje GBAK), kterou doporučujeme provádět.
- Na všech databázových platformách je zapotřebí udržovat (přepočítávat) statistiky vedoucí k optimalizaci rychlosti práce databáze (přestože se indexy aktualizují průběžně automaticky, databázové systémy se potřebují pro efektivní práci správně rozhodovat, které indexy v konkrétních situacích použít - a k tomu potřebují aktuální údaje o souhrnném rozložení dat). V některých případech se mohou statistiky přepočítávat automaticky. Pro podrobnější informace si prostudujte dokumentaci k používanému databázovému systému.
Doporučujeme provádět údržbu databáze MSSQL/Microsoft SQL Server pro dosažení rychlejšího vykonávání základních SQL operací. Provádění údržby indexů a statistik lze doporučit zákazníkům, pokud se databáze zvětšuje více jak 10GB/rok nebo dochází volání více jak 1M SQL dotazů denně.
Nastavení údržby doporučujeme nakonfigurovat následně, a to pomocí SQL - Management - Maintanance Plans:
- Denně (PO-SO obvykle po půlnoci)
- reorganizace indexů u indexů u kterých se fragmentace zvýší nad 15 %
- přepočet statistik v režimu FULL
- Jednou týdně (neděle obvykle po půlnoci)
- kontrola integrity databáze
- reorganizace indexů u indexů, u kterých se fragmentace zvýší nad 15 %
- rebuild indexů u indexů u kterých se fragmentace zvýší nad 30 %
- přepočet statistik v režimu FULL
- vyčištění history logů se zachováním posledních 4 týdnů dat
Dále je přes plány doporučeno řešit i zálohování:
- Každou hodinu záloha transakčních logů
- Jednou denně plná záloha - jak provádět zálohu databáze včetně souboru Storage.stf je uvedeno v PDF příručce v MSSQL.