Jak optimalizovat výkon aplikace Office Access a databázového stroje Jet v síti u klientů se systémy Windows 2000 a Windows XP

Překlady článku Překlady článku
ID článku: 889588 - Produkty, které se vztahují k tomuto článku.
Důležité: Tento článek obsahuje informace o úpravě registru. Před úpravami je nutné registr zálohovat. Seznamte se také s postupem při obnovení registru v případě, že nastanou potíže. Informace o zálohování, obnovení a úpravě registru najdete v následujícím článku znalostní báze Microsoft Knowledge Base:
256986 Popis registru systému Microsoft Windows
Rozbalit všechny záložky | Minimalizovat všechny záložky

Na této stránce

Souhrn

Pokud spustíte aplikaci založenou na databázovém stroji Microsoft Jet, například aplikaci Microsoft Office Access, v počítači se systémem Microsoft Windows 2000 nebo Microsoft Windows XP, může aplikace reagovat pomaleji, než očekáváte. Tento článek obsahuje informace, jak lze optimalizovat výkon počítačů se systémem Windows 2000 a Windows XP v síti. Po provedení tohoto postupu budou aplikace Office Access a databázový stroj Jet reagovat rychleji.

ÚVOD

Po upgradu počítače z operačního systému Microsoft Windows NT 4.0 na systém Windows 2000 nebo Windows XP Professional může dojít ke snížení výkonu aplikace Office Access nebo aplikací založených na databázovém stroji Jet. Mohou se například vyskytnout následující příznaky:
  • Otevření souboru MDB trvá déle, než očekáváte.
  • Spuštění dotazů aplikace Access trvá déle, než očekáváte.
  • Otevření formuláře, který je založen na propojené tabulce v aplikaci Access, trvá déle, než očekáváte.
  • Operace v aplikaci Access, například Vložení, trvají déle, než očekáváte.
  • Proces přístupu k síťovým zdrojům trvá déle, než očekáváte.

Další informace

Výkon aplikace Access a programů založených na databázovém stroji Jet v síti závisí na následujících kritériích:
  • nastavení systému souborů na souborovém serveru, kde je uložena serverová databáze aplikace Access;
  • metody ukládání do mezipaměti a optimalizace klienta;
  • procedury a metody aplikace Access nebo programu založeného na databázovém stroji Jet;

Optimalizace souborového serveru

Následující metody popisují, jak optimalizovat výkon souborového serveru, na kterém je uložena databáze aplikace Access nebo program založený na databázovém stroji Jet.

Používání konvencí pro vytváření názvů verze 8.3

Aplikace Access volá funkci GetShortPathNameW v síti u každého připojeného dotazu, pokud je název souboru databáze delší než osm znaků nebo pokud je databáze umístěna ve složce, jejíž název je delší než 8 znaků.

K tomuto chování dochází u názvů souborů, které jsou delší, než povoluje limit konvencí pro vytváření názvů typu 8.3. Dlouhé názvy souborů a složek mohou prodloužit čas potřebný ke zpracování dotazu. Pokud je název souboru databáze nebo složky, ve které je soubor databáze uložen, delší než osm znaků, přejmenujte název souboru nebo složky. Názvy souborů a složek nesmí být delší než osm znaků a přípona názvu souboru nesmí být delší než tři znaky. Následuje příklad cesty k databázi, která zahrnuje krátké názvy souborů a složek podle konvencí vytváření názvů typu 8.3:
\Složka_1\Složka_2\AccessDb.mdb
Následuje příklad cesty k databázi, která používá dlouhé názvy souborů a složek:
\Složka_pro_první_databázi\Složka_pro_druhou_databázi\Velká_databáze.mdb
Další informace o dlouhých názvech v systému Windows naleznete v následujícím článku znalostní báze Microsoft Knowledge Base:
226403 Po zkopírování se mohou změnit krátké názvy souborů (8.3) (Tento článek může obsahovat odkazy na anglický obsah (dosud nepřeložený).)
Používáte-li rozdělenou databázi, můžete také nahradit názvy souborů a složek odkazů na uživatelské databáze ekvivalentem vyhovujícím konvencím verze 8.3. Předpokládejme například, že máte následující cestu k databázi s dlouhými názvy souborů a složek:
\Složkaproprvnídatabázi\Složkaprodruhoudatabázi\Velká_databáze.mdb
Můžete přejmenovat odkazy v uživatelské databázi na následující ekvivalent s krátkými názvy souborů a složek:
\Složka~1\Složka~2\Velká_~1.mdb
Následující příklad znázorňuje, jak propojit odkaz na databázi, která má dlouhou cestu k databázi, s konverzí na krátký název souboru:
Function mcrLink()

    DoCmd.TransferDatabase acLink, "Microsoft Access", "\\Název_serveru\název_sdílené_položky\Složka~1\Složka~2\Velká_~1.mdb", acTable, "tblName1", "tblName1", False

End Function
Další informace, jak nahradit názvy souborů a složek odkazů na uživatelské databáze ekvivalenty odpovídajícími konvencím typu 8.3, najdete v následujícím článku znalostní báze Microsoft Knowledge Base:
891176 Pomalejší výkon programů založených na databázi Access nebo databázovém stroji Jet po upgradu ze systému Windows NT 4.0 na systém Windows 2000 nebo Windows XP (Tento článek může obsahovat odkazy na anglický obsah (dosud nepřeložený).)
Společnost Microsoft poskytuje ukázky programování pouze pro ilustraci, bez žádné záruky výslovně uvedené nebo mlčky předpokládané, včetně, ale ne výhradně, mlčky předpokládaných záruk vztahujících se k obchodovatelnosti nebo vhodnosti pro určitý účel. Tento článek předpokládá, že uživatel je obeznámen s programovacím jazykem, který je předmětem ukázky, a s nástroji použitými pro vytvoření a ladění skriptu. Pracovníci odborné pomoci společnosti Microsoft mohou vysvětlit funkce určitého postupu, nemohou však následující příklady rozšířit o další funkce nebo konstrukce podle konkrétních požadavků uživatele.

Vypnutí zpoždění upozornění na narušení sdílení

Vypnutím zpoždění upozornění na narušení sdílení lze zvýšit výkon serveru. Proveďte tyto kroky u souborového serveru, na kterém je uložena databáze aplikace Access nebo programu založeného na databázovém stroji Jet.

Upozornění: Při nesprávných úpravách registru pomocí Editoru registru nebo jiným způsobem může dojít k vážným problémům. Tyto problémy mohou vyžadovat přeinstalaci operačního systému. Společnost Microsoft nezaručuje, že tyto problémy bude možné vyřešit. Úpravy registru provádíte na vlastní nebezpečí.
  1. Klepněte na tlačítko Start a na příkaz Spustit, zadejte příkaz regedit a klepněte na tlačítko OK.
  2. Vyhledejte následující podklíč registru:
    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters
  3. Klepněte pravým tlačítkem myši na položku Parametry, přejděte na příkaz Nový, klepněte na možnostHodnota DWORD, zadejte hodnotu SharingViolationDelay a pak stiskněte klávesu ENTER.

    Poznámka: Při vytvoření položky podklíče SharingViolationDelay bude přiřazena výchozí hodnota 0x0. Tuto hodnotu požadujeme.

    Pokud položka podklíče SharingViolationDelay již existuje, klepněte pravým tlačítkem myši na položku SharingViolationDelay, klepněte na příkaz Změnit, zadejte hodnotu 0 a pak klepněte na tlačítko OK.
  4. Klepněte pravým tlačítkem myši na položku Parametry, přejděte na příkaz Nový, klepněte na možnostHodnota DWORD, zadejte hodnotu SharingViolationRetries a pak stiskněte klávesu ENTER.

    Poznámka: Při vytvoření položky podklíče SharingViolationRetries bude přiřazena výchozí hodnota 0x0. Tuto hodnotu požadujeme.

    Pokud položka podklíče SharingViolationRetries již existuje, klepněte pravým tlačítkem myši na položku SharingViolationRetries, klepněte na příkaz Změnit, zadejte hodnotu 0 a pak klepněte na tlačítko OK.
  5. Ukončete Editor registru.
Další informace o zpoždění upozornění na narušení sdílení naleznete v následujícím článku znalostní báze Microsoft Knowledge Base:
150384 Přístup ke sdílenému souboru je zpožděný, pokud je soubor otevřen v jiném počítači (Tento článek může obsahovat odkazy na anglický obsah (dosud nepřeložený).)

Přesunutí serverové databáze na svazek se systémem souborů NTFS

Pokud je databáze aplikace Access nebo programu založeného na databázovém stroji Jet uložena na svazku se systémem souboru FAT (File Allocation Table), můžete výkon zvýšit přesunutím souboru serverové databáze na svazek NTFS. Další informace o systému NTFS naleznete v následujícím článku znalostní báze Microsoft Knowledge Base:
100108 Přehled systémů souborů FAT, HPFS a NTFS
Další informace o přesunutí souborů databáze aplikace Access nebo databázového stroje Jet získáte po vyhledání slovního spojení „kopírování nebo přesunutí souboru aplikace Access“ v nápovědě k aplikaci Access.

Zakázání automatického generování krátkých názvů souborů

Zakažte automatické generování krátkých názvů souborů v systému souborů NTFS. Proveďte tyto kroky u souborového serveru, na kterém je uložena databáze aplikace Access nebo programu založeného na databázovém stroji Jet. Upozornění: Při nesprávných úpravách registru pomocí Editoru registru nebo jiným způsobem může dojít k vážným problémům. Tyto problémy mohou vyžadovat přeinstalaci operačního systému. Společnost Microsoft nezaručuje, že tyto problémy bude možné vyřešit. Úpravy registru provádíte na vlastní nebezpečí.
  1. Klepněte na tlačítko Start a na příkaz Spustit, zadejte příkaz regedit a klepněte na tlačítko OK.
  2. Vyhledejte následující podklíč registru:
    HKEY_LOCAL_MACHINE \SYSTEM\CurrentControlSet\Control\FileSystem
  3. Klepněte pravým tlačítkem myši na položku NtfsDisable8dot3NameCreation, klepněte na příkaz Změnit, zadejte hodnotu 1 a pak klepněte na tlačítko OK.
  4. Ukončete Editor registru a restartujte počítač.
Poznámka: Po provedení této změny budou soubory používající formát krátkých názvů souborů stále k dispozici pro 32bitové programy. Soubory s dlouhými názvy souborů vytvořené po provedení této změny však nebudou k dispozici pro 16bitové programy.

Další informace o automatickém generování krátkých názvů souborů v systému souborů získáte v následujících článcích znalostní báze Microsoft Knowledge Base:
121007 Jak zakázat vytváření názvů typu 8.3 v oddílech NTFS. (Tento článek může obsahovat odkazy na anglický obsah (dosud nepřeložený).)
Další informace naleznete v následujícím článku znalostní báze Microsoft Knowledge Base:
210638 Jak zakázat automatické generování krátkých názvů (Tento článek může obsahovat odkazy na anglický obsah (dosud nepřeložený).)
Pokud je soubor databáze aplikace Access nebo databázového stroje Jet uložen na souborovém serveru se systémem Windows Server 2003, můžete vypnout vytváření aliasů systému souborů. Vytváření aliasů je funkce, která je součástí systému Windows Server 2003. Tato funkce umožňuje, aby více dlouhých či krátkých názvů souborů odkazovalo na stejný soubor. Zakázání vytváření aliasů systému souborů může zvýšit výkon tím, že zvětší velikost mezipaměti pro služby serveru, která je k dispozici v počítači se systémem Windows Server 2003.

Důležité: Pokud počítač se systémem Windows Server 2003 používá vytváření aliasů systému souborů, například připojování nebo body změny zpracování, nedoporučujeme provádět tento postup.

Chcete-li vypnout vytváření aliasů souborového serveru, proveďte následující kroky u souborového serveru se systémem Windows Server 2003, na kterém je uložena databáze aplikace Access nebo databázového stroje Jet.

Upozornění: Při nesprávných úpravách registru pomocí Editoru registru nebo jiným způsobem může dojít k vážným problémům. Tyto problémy mohou vyžadovat přeinstalaci operačního systému. Společnost Microsoft nezaručuje, že tyto problémy bude možné vyřešit. Úpravy registru provádíte na vlastní nebezpečí.
  1. Klepněte na tlačítko Start a na příkaz Spustit, zadejte příkaz regedit a klepněte na tlačítko OK.
  2. Vyhledejte následující podklíč registru:
    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters
  3. Klepněte pravým tlačítkem myši na položku Parametry, přejděte na příkaz Nový, klepněte na možnostHodnota DWORD, zadejte hodnotu NoAliasingOnFileSystem a pak stiskněte klávesu ENTER.
  4. Klepněte pravým tlačítkem myši na položku NoAliasingOnFileSystem, klepněte na příkaz Změnit, zadejte hodnotu 1 a klepněte na tlačítko OK.
  5. Ukončete Editor registru a restartujte počítač.

Optimalizace klienta

Následující metody popisují, jak optimalizovat výkon u klienta, který bude přistupovat k databázi aplikace Access nebo databázového stroje Jet.

Povolení rozšířeného ukládání názvů souborů do mezipaměti

Ve výchozím nastavení ukládají operační systémy Windows 2000 a Windows XP do mezipaměti pouze krátké názvy souborů a složek. To znamená názvy souborů a složek, které odpovídají konvencím 8.3. V počítači se systémem Windows 2000 nebo Windows XP můžete povolit rozšířené ukládání do mezipaměti, aby byly ukládány také dlouhé názvy souborů a složek. Tak lze zvýšit výkon při získávání přístupu k souborům v síti.

Další informace o povolení rozšířeného ukládání do mezipaměti u systému Windows XP Service Pack 1 a starších verzí najdete v následujícím článku znalostní báze Microsoft Knowledge Base:
834350 Přístup k síťovým prostředkům v systému Windows XP je pomalejší než ve starších verzích systému Windows (Tento článek může obsahovat odkazy na anglický obsah (dosud nepřeložený).)
Další informace o povolení rozšířeného ukládání do mezipaměti u systému Windows 2000 najdete v následujícím článku znalostní báze Microsoft Knowledge Base:
843418 Přístup k síťovým prostředkům nebo aplikace Microsoft Access jsou v systému Windows 2000 pomalejší. (Tento článek může obsahovat odkazy na anglický obsah (dosud nepřeložený).)
Poznámka: Systémy Windows XP Service Pack 2 a Windows Server 2003 již zahrnují typ rozšířeného ukládání do mezipaměti. Pro optimalizaci výkonu je však nutné nastavit položku registru InfoCacheLevel v následujícím podklíči na šestnáctkovou hodnotu 0x10:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\MRxSmb\Parameters

Optimalizace připojených dotazů v počítačích se systémem Windows XP

Počítače se systémem Windows XP vyprazdňují mezipaměť a zapisují celou databázi na souborový server u všech připojených transakcí, které proběhnou. Připojené dotazy můžete optimalizovat použitím opravy hotfix a změnou položky registru DisableFlushOnCleanup v počítači se systémem Windows XP. Další informace optimalizaci připojených dotazů v počítačích se systémem Windows XP naleznete v následujícím článku znalostní báze Microsoft Knowledge Base:
825433 Nízký výkon po připojení dat k databázi založené na sdíleném souboru z klienta se systémem Windows XP (Tento článek může obsahovat odkazy na anglický obsah (dosud nepřeložený).)

Optimalizace procedur a metod databáze aplikace Access nebo databáze založené na databázovém stroji Jet

Následující doporučení mohou zvýšit výkon procedur a metod používaných aplikací Access nebo Jet programy založenými na databázovém stroji Jet.
  • Použijte konfiguraci rozdělené databáze. Konfigurace rozdělené databáze je známá také jako konfigurace uživatelské a serverové databáze. Další informace o postupu pro konfiguraci rozdělené databáze získáte v následujícím článku databáze Microsoft Knowledge Base:
    162522 Problémy při další distribuci aplikace Access jako aplikace rozdělené databáze (Tento článek může obsahovat odkazy na anglický obsah (dosud nepřeložený).)
  • Nainstalujte nejnovější aktualizaci Service Pack, která je k dispozici pro váš operační systém Windows, do klientských počítačů a do počítače souborového serveru.
  • Nainstalujte aktualizaci Service Pack 8 databázového stroje Jet 4.0 nebo novější do klientského počítače. Další informace o možnostech získání nejnovější aktualizace Service Pack pro databázový stroj Jet 4.0 naleznete v následujícím článku znalostní báze Microsoft Knowledge Base:
    239114 Získání poslední aktualizace Service Pack pro databázový stroj Microsoft Jet 4.0
  • Konfigurujte všechny počítače s uživatelskou databázi na zachování otevřeného připojení k souborům serverové databáze. Vytvořte v souboru serverové databáze tabulku obsahující jedno textové pole a jeden záznam. Vytvořte například tabulku obsahující následující konfiguraci:
    Název tabulky: tblConnect
    Název pole: Pole1
    Typ dat: Text
    První záznam: “Connection”

    Propojte tuto tabulku s uživatelskou databází a vytvořte formulář založený na této tabulce. Otevřete databázi pomocí skrytého formuláře u spouštěcí procedury. Spouštěcí proceduru lze vložit do makra nebo do spouštěcího formuláře, jak je znázorněno v následujícím příkladu:
    DoCmd.OpenForm " tblConnect",acNormal ,,,,acHidden
    Můžete také otevřít sadu záznamů založenou na této tabulce. Proměnnou sady záznamů je třeba deklarovat v sekci globální deklarace modulu. Při ukončení uživatelské databáze je také třeba ji uzavřít.
  • Pokud se k databázi připojuje více uživatelů za účelem zadávání dat, použijte formuláře místo tabulek.

Doporučené postupy pro optimalizaci výkonu databáze

Pro optimalizaci aplikace Access nebo databázového stroje Jet doporučujeme provést následující postupy:
  • Optimalizujte kód databázového programu v modulech aplikace Access, které zahrnují operace náročné na prostředky, například smyčky. Uzavřete kód smyčky do příkazů BeginTrans a CommitTrans, například jako v následujícím příkazu:
    BeginTrans Loop code CommitTrans
    Tím umožníte databázovému stroji Jet shromáždit více aktualizací a zapsat je jako jednu dávku. Další informace o optimalizaci kódu v modulech aplikace Access získáte v následujícím článku znalostní báze Microsoft Knowledge Base:
    208858 ACC2000: Optimalizace výkonu klienta/serveru (Tento článek může obsahovat odkazy na anglický obsah (dosud nepřeložený).)
  • Ve výchozím nastavení je u klientů systému Windows povoleno příležitostné zamykání. V klientském počítači musí být příležitostné zamykání zakázáno. Další informace o konfiguraci příležitostného zamykání v systému Windows získáte v následujícím článku znalostní báze Microsoft Knowledge Base:
    296264 Konfigurace příležitostného zamykání v systému Windows
    Další informace o příležitostném zamykání a výkonu získáte v následujícím článku znalostní báze Microsoft Knowledge Base:
    303528 Jak zajistit, aby databáze Jet 4.0 fungovala co nejlépe (Tento článek může obsahovat odkazy na anglický obsah (dosud nepřeložený).)
  • Připojte se k souborovému serveru, na němž je uložena databáze aplikace Access nebo databáze založená na databázovém stroji Jet, pomocí namapované jednotky, nikoli pomocí cesty UNC.
Chcete-li optimalizovat výkon databáze, zvažte přesunutí aplikace Access nebo programů založených na databázovém stroji Jet na server Microsoft SQL Server. Model klient/server je vhodnější než model souborového serveru u aktivních databází, které obsluhují mnoho připojení. Při použití serveru SQL Server může výrazně vzrůst výkon i odolnost.

Odkazy

Další informace o aplikaci Access, databázovém stroji Jet a výkonu v síti získáte v následujících článcích znalostní báze Microsoft Knowledge Base:
275085 CHYBA: Pomalý výkon propojených tabulek v aplikacích Access 2002 a Office Access 2003 (Tento článek může obsahovat odkazy na anglický obsah (dosud nepřeložený).)
261000 CHYBA: Pokles výkonu propojených tabulek v aplikacích Access 2000 (Tento článek může obsahovat odkazy na anglický obsah (dosud nepřeložený).)
209126 Informace o výkonu dotazů v databázi aplikace Access (Tento článek může obsahovat odkazy na anglický obsah (dosud nepřeložený).)
288631 Defragmentace a komprese databáze za účelem zvýšení výkonu (Tento článek může obsahovat odkazy na anglický obsah (dosud nepřeložený).)
209126 Informace o výkonu dotazů v databázi aplikace Access (Tento článek může obsahovat odkazy na anglický obsah (dosud nepřeložený).)
290181 Nízký výkon, pokud uživatel otevře objekt s povolenou funkcí Name AutoCorrect v aplikaci Microsoft Access (Tento článek může obsahovat odkazy na anglický obsah (dosud nepřeložený).)
240434 Jak zvýšit výkon aplikací pomocí databázového stroje Jet 4.0. (Tento článek může obsahovat odkazy na anglický obsah (dosud nepřeložený).)
289533 Zdroje informací o návrhu databáze v aplikaci Microsoft Access
870753 Popis balíčku oprav hotfix následujících po verzi 837001 pro databázový stroj Jet 4.0: 21. 7. 2004 (Tento článek může obsahovat odkazy na anglický obsah (dosud nepřeložený).)
303528 Jak zajistit, aby databáze Jet 4.0 fungovala co nejlépe. (Tento článek může obsahovat odkazy na anglický obsah (dosud nepřeložený).)
208858 Optimalizace výkonu klienta/serveru (Tento článek může obsahovat odkazy na anglický obsah (dosud nepřeložený).)
239114 Získání poslední aktualizace Service Pack pro databázový stroj Microsoft Jet 4.0
891176 Nižší výkon programů založených na databázi Access nebo databázovém stroji Jet po upgradu ze systému Windows NT 4.0 na systém Windows 2000 nebo Windows XP (Tento článek může obsahovat odkazy na anglický obsah (dosud nepřeložený).)

Vlastnosti

ID článku: 889588 - Poslední aktualizace: 1. prosince 2007 - Revize: 5.4
Informace v tomto článku jsou určeny pro produkt:
  • Microsoft Windows XP Professional
  • Microsoft Windows XP Professional x64 Edition
  • Microsoft Windows XP Media Center Edition
  • Microsoft Windows XP Tablet PC Edition
  • Microsoft Windows 2000 Professional Edition
  • Microsoft Windows 2000 Server
  • Microsoft Windows Server 2003, Standard Edition (32-bit x86)
  • Microsoft Office Access 2003
  • Microsoft Access 2002 Standard Edition
  • Microsoft Access 2000 Standard Edition
  • Microsoft Access 97 Standard Edition
  • Microsoft Windows XP Professional 64-Bit Edition (Itanium)
Klíčová slova: 
kbnetwork kbdatabase kbperformance kbopenfile kbhowto KB889588

Dejte nám zpětnou vazbu

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com