![]() |
Nestandardní ukončení chodu databázového serveru |
![]() |
Databázový server (SQL server, databáze) | Kontrola integrity tabulek |
![]() |
Indexy databázových tabulek jsou interním technickým prostředkem, který používá SQL server při veškerých přístupech k datům a který umožňuje práci v reálném čase.
Kdyby neexistovaly indexy, musel by SQL server pro nalezení jakéhokoliv záznamu v tabulce přečíst všechny záznamy a hledat takový, který odpovídá požadavku. Indexy serveru pomáhají v přímém přístupu k hledaným záznamům, bez nutnosti číst vše ostatní.
Indexy se vytvářejí a modifikují při každé modifikaci tabulky (nový záznam – editace – smazání záznamu), musí být s tabulkou v souladu. Vypadá to jako samozřejmost, ale k problému přesto může dojít. Nejkritičtější situací je nestandardní ukončení chodu SQL serveru ( výpadek elektřiny, pád serveru z důvodu jeho vnitřních problémů apod.).
Pokud některý index neodpovídá reálné situaci v příslušné tabulce, způsobí to obvykle další problémy. Např. aplikace nemůže nalézt záznam, který ve skutečnosti v databázi existuje apod.
Při provozu Kaskády je k dispozici několik prostředků, napomáhajících kontrolám a případným opravám indexů.
Používáme pojem revize indexů, který zahrnuje kontrolu indexů a opravu
indexů.
Indexy nejdůležitějších tabulek (jejich množinu určili programátoři Kaskády) se automaticky revidují (kontrolují i opravují) každý den, jako jedna z prvních operací při nočním úklidu.
Pokud je vše v pořádku, proběhne kontrola v tichosti.
Pokud je zjištěn problém, dostane o tom uživatel informaci prostřednictvím varovného panelu, ale také se odešle zásilka s popisem problému na adresu hotline@ekaskada.cz.
Při spouštění Kaskády, v dialogu pro výběr datové větve, pod tlačítkem Servis je pro správce databáze k dispozici volba Zrevidovat indexy tabulek.
Pokud dojde k nestandardnímu ukončení chodu SQL serveru, pozná se to při jeho následujícím spuštění. V každé datové větvi (obvykle je na serveru pouze jedna) se nastaví příznak (__proptab / @KASKADA / IT_jmenovetve = TRUE), který je následně použit pro zobrazení varovného panelu.
Tato výzva má dvě formy
Při spuštění Kaskády je přímo nabídnuto provedení revize,
při odsouhlasení se otevře Dialog Revize indexů tabulek.
V modulu Agenda se v takové situaci administrátorovi zobrazí nepřehlédnutelný červený panel s textem "ZREVIDUJTE INDEXY". Znamená to, že nevyužil nabídku při spuštění, měl by neprodleně tuto revizi provést.
V obou případech, pokud administrátor spustil revizi indexů, se po jejím dokončení zobrazí dotaz, zda se má spustit i kontrola integrity tabulek.
Při provádění Aktualizace datových struktur dochází k mnoha zásadním operacím s databázovými tabulkami, včetně modifikace struktury některých tabulek. Pokud by v tuto chvíli byly některé indexy nekonzistentní, mohlo by to způsobit vážné problémy, včetně porušení integrity databáze. To je důvodem, proč Kaskáda před vlastním provedením aktualizace datové větve automaticky spouští revizi indexů. Sice to stojí určitý čas, ale bezpečnost dat je na prvním místě.
Provedení revize se odehrává prostřednictvím dialogu Revize indexů tabulek, není zde však umožněna volba režimu, vše probíhá automaticky.
![]() |
Nestandardní ukončení chodu databázového serveru |
![]() |
Databázový server (SQL server, databáze) | Kontrola integrity tabulek |
![]() |