Chybová hláška Neznámý formát databáze

Při spuštění Varia, případně během práce se zobrazí chybová hláška Neznámý formát databáze [název souboru]. Pokud je v názvu souboru uveden některý z datových nebo aplikačních souborů Varia, znamená tato hláška, že soubor je poškozen.

Trocha teorie

Čtení a zápisy do datových aplikačních souborů Varia zajišťuje databázový stroj Microsoft Jet Engine (jde o soubory s příponou .mdb, .mda a .mdw). Tento stroj provádí mnoho složitých operací od rychlého vyhledávání, přes šifrování dat až po zajištění současného přístupu mnoha uživatelů k jedněm datům. Jedná se o složitou technologii, která vám bude dobře sloužit a poskytne vám vynikající poměr cena výkon - avšak pouze za předpokladu, že budete věnovat náležitou pozornost všem částem vaší počítačové infrastruktury. Rychlý a bezpečný provoz nelze zajistit v prostředí nespolehlivé počítačové sítě, na počítačích s nestabilním operačním systémem nebo nesprávně nastavenými parametry síťových prvků.

Je potřeba mít na paměti, že práce s databázemi informačního systému, jakým je Altus VARIO, je mnohem náročnější než občasné uložení například textového dokumentu. Proto se při ní mohou projevit problémy, které zůstávají při práci s jinými aplikacemi skryté.

Důležité: přes veškerou snahu, kterou věnují všichni vývojáři bezpečnosti databází, se nikdy nelze vyhnout ztrátě dat. Jediným spolehlivým zabezpečením je pravidelné zálohování dat. Důležité je zálohovat tak, aby bylo k dispozici několik funkčních záloh, například na každý den v týdnu jedna (nemá smysl udržovat pouze jednu zálohu; může se stát, že funkční záložní data přepíšete poškozenými).

Příčiny poškození

1) Nestandardní ukončení aplikace. Při normálním ukončení práce s Variem dojde k odhlášení uživatelů od databázových souborů. Tím se ukončí připojení k souboru a uvolní se všechny interní zdroje (například informace o uzamčení, které se používají pro vyřešení současného zápisu).

Pokud je ukončení násilné, k odhlášení uživatelů nedojde. Databázový soubor může (ale nemusí) být poškozen. Při pokusu o otevření souboru proto databázový stroj zruší otevírání, zobrazí chybovou hlášku Neznámý formát databáze. V lepším případě jde pouze o to, že k databázi je přihlášen neaktivní uživatel. V tomto případě stačí provést opravu databáze, při které databázový stroj uživatele odhlásí (toto je většina případů). V horším případě došlo k výpadku během zápisu. V databázi tak budou nesprávně uspořádaná data a při pokusu o opravu zpravidla dojde ke ztrátě naposledy vkládaných údajů.

Příčinou nestandardního ukončení aplikace může být: výpadek napájení nebo závada na počítači, přerušení spojení v počítačové síti, zhroucení aplikace nebo operačního systému. Na starších počítačích způsoboval toto závadu režim úspory energie (vypínání disků, spánek procesoru a podobně).

Je potřeba nalézt příčinu násilného ukončení aplikace a odstranit ji. Občas se setkáváme s případy, kdy uživatelé považují zhroucení aplikace nebo Windows za normální jev. Upozorňujeme, že to rozhodně normální jev není a provozování takových počítačů ve firmě je nepřípustné. Dnešní verze kancelářských programů a operačního systému jsou velmi stabilní - pokud je situace u vás jiná, je načase změnit správce nebo dodavatele IT.

2) Fragmentované databázové soubory. Zejména velké databázové soubory na počítačích se souborovým systémem FAT se mohou poškodit, pokud jsou fragmentované (zejména pokud je server současně používán jako pracovní stanice). Je potřeba, aby na disku serveru s daty byl dostatek volného místa (alespoň 30% kapacity disku) a je potřeba provádět pravidelnou defragmentaci. Pokud máte problémy s poškozením dat, ujistěte se, že datové soubory Varia nejsou fragmentovány. Pokud jsou vaše data větší než cca 20 MB a přistupují k nim více než 3 uživatelé, umístěte je na souborový server – samostatný počítač, který je nastaven jako server. Nikdy nesdílejte taková data na pracovní stanici!

Jsou-li vaše data větší než 50-80MB, přejděte na MS SQL server. Pro malý počet uživatelů je k dispozici MSDE, jehož použití je zdarma.

3) Chyba na disku nebo v síti. Pokud se vám podaří eliminovat příčiny podle bodu 1 a 2 a stále dochází k poškozování dat, může být chyba kdekoli v celém řetězci (od počítače a jeho síťové karty přes aktivní síťové prvky až po server). Zpravidla však jde o chybu v ovladači síťové karty nebo v síťové kartě. Hledání této chyby je časově náročné. Protože se zpravidla jedná o nahodile se vyskytující problém, doporučujeme následující postup: odpojovat postupně od sítě podezřelé počítače (například starší počítače, počítače se síťovými kartami pochybné kvality, notebooky s docking stations) a sledovat, kdy problém zmizí a kdy se objeví.

Je možno též uměle zatěžovat síť pomocí aplikace Test_rychlosti, kterou naleznete na instalačním CD Varia ve složce Servis\Test_rychlosti. Pomocí této aplikace můžete postupně testovat jeden počítač za druhým.

Naše doporučení: sjednoťte komponenty vaší sítě, nakupte moderní síťové karty a aktivní prvky sítě od jednoho výrobce. Nainstalujte nejnovější vydání Windows (aplikujte aktuální servis packy). Věnujte pozornost nastavením sítě, eliminujte nepoužívané a staré síťové protokoly. Odměnou vám bude nejen spolehlivě fungující Vario, ale též rychlejší práce s ostatními programy a zabezpečení vaší firmy.

Varování: příčinu problému je nutno najít a odstranit. Rozhodně jde o velmi nebezpečný stav, u nějž hrozí téměř jistá ztráta dat.

4) Otevření a uložení databázového souboru v jiné aplikaci. Ačkoli nepředpokládáme, že by to někdo udělal, dodáváme pro úplnost, že databázový soubor se zničí (nevratně), pokud jej otevřete například v textovém editoru a uložíte.

Druhy poškození

1) Soubor nemusí být poškozen vůbec. To je časté v případě násilného ukončení. Zde jde o preventivní hlášku. Při provedení opravy a komprese databázový stroj pouze vyčistí seznam přihlášených uživatelů a databázi je možno dál používat.

 

2) Mohou být ztracena naposled přidaná data. Pokud k výpadku dojde během zápisu, mohou být v souboru ne zcela uložená data. Při opravě a kompresi souboru jsou zpravidla odstraněny údaje, které byly naposledy přidávány, a soubor se podaří obnovit.

 

3) Poškození souboru však může být také vážné. Vážná mohou být poškození plynoucí z chyb způsobených prací s fragmentovaným souborem (bod 2) a chyby způsobené chybnou spoluprácí se sítí (bod 3). Při opravě a kompresi není potom databázový stroj schopen rozpoznat celý blok dat (nebo také strukturu tabulek) a mohou být ztracena i data zadaná v minulosti. Problém je, že takové ztráty nemusíte postřehnout hned. Vario obsahuje nástroje na kontrolu integrity dat, které většinu problémů dokáží odhalit, avšak pokud je poškození rozsáhlejší, bude lepší vrátit se k včerejší záloze a zopakovat dnešní operace.

 

Oprava

1) Pokud se zobrazí hláška Neznámý formát databáze, je potřeba provést opravu a kompresi dat. Pokud lze Vario spustit, proveďte opravu pomocí doplňku Správce databáze.

2) Pokud máte Vario verze 11 vydání 20040126 a vyšší, provádí se při spuštění kontrola předchozího vypnutí Varia. Jestliže Vario nebylo vypnuto standardním způsobem, provede se preventivní oprava a komprese dat. Jestliže přesto nemůžete Vario spustit kvůli chybě Neznámý formát databáze, můžete vyvolat preventivní opravu dat tím, že vytvoříte v datové složce Varia prázdný soubor s názvem Vario.ldb. Při spuštění vám potom Vario nabídne provedení preventivní opravy a komprese.

Pokud se nelze přihlásit k Variu - chybová hláška se zobrazí již při zadání přihlašovacího jména a hesla a dialog přihlášení se nezavře, je poškozen soubor pracovních skupin Vario.mdw, který se nachází ve složce příslušného datového profilu. Obnovte tento soubor ze zálohy, nebo jej opravte podle kroku 3) nebo 4).

3) Pokud máte Vario starší verze nebo vydání, můžete opravu a kompresi provést pomocí příkazového řádku programu Msaccess.exe:

V nabídce Start systému Windows zvolte položku spustit. Objeví se okno pro zadání příkazového řádku. Zadejte do něj tento příkaz:

"C:\Program Files\Microsoft Office\Office\MSACCESS.exe" /Repair "C:\Program Files\Vario11\Data\Data0001.mdb"

Kde

"C:\Program Files\Microsoft Office\Office\MSACCESS.exe" - je cesta k msacess.exe. Pro nalezení jeho umístění můžete použí tlačítko Procházet.

/Repair - povinný parametr

"C:\Program Files\Vario11\Data\Data0001.mdb" je cesta k poškozenému souboru, kterou zjistíte z chybové hlášky Neznámý formát databáze.

4) Pokud se nepodaří opravit databázi pomocí programu MS Access, použijte nástroj JetComp.exe, který naleznete spolu s popisem použití ve složce Servis\Oprava_databazi na instalačním CD Varia. Nástroj JetComp dokáže opravit i soubory, které MS Access nedokáže opravit.

Důležité: Poté, co se vám podaří opravit databáze a spustit Vario, spusťte nejprve doplněk Správce databáze a proveďte opravu a kompresi všech datových souborů a kontrolu integirity dat.