Select the product you need help with
如何在基于 Windows 2000 和基于 Windows XP 的客户端上优化 Office Access 和 Jet 数据库引擎的网络性能文章编号: 889588 - 查看本文应用于的产品 重要说明:本文包含有关修改注册表的信息。修改注册表之前,一定要先进行备份,并且一定要知道在发生问题时如何还原注册表。有关如何备份、还原和编辑注册表的信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章: 256986
(http://support.microsoft.com/kb/256986/
)
Microsoft Windows 注册表说明本页概要在基于 Microsoft Windows 2000 或基于 Microsoft Windows XP 的计算机上运行 Microsoft Office Access 等基于 Microsoft Jet 数据库引擎的程序时,这类程序的运行速度和响应速度可能比您预期的要慢。本文包含有关如何为基于 Windows 2000 和基于 Windows XP 的计算机优化网络性能的信息。这样做可以提高 Office Access 和基于 Jet 数据库引擎的程序的响应速度。 简介将计算机从基于 Microsoft Windows NT 4.0 的操作系统升级到基于 Windows 2000 的操作系统或基于 Windows XP Professional 的操作系统后,Office Access 或基于 Jet 数据库引擎的应用程序的性能可能会下降。例如,您可能遇到下列症状:
更多信息Access 和基于 Jet 数据库引擎的程序的网络性能取决于下列条件:
文件服务器优化下列方法说明如何在存储 Access 或基于 Jet 数据库引擎的数据库的文件服务器上优化性能。使用 8.3 文件名约定如果数据库文件名长度超过八个字符,或者数据库所在的文件夹的名称长度超过八个字符,则对于每个追加查询,Access 会通过网络调用 GetShortPathNameW 函数。对于长度超过 8.3 文件命名约定限制指定的文件名和文件夹名称,就会出现此行为。长文件名和文件夹名称会增加完成查询所需的时间。如果数据库文件的名称或数据库所在文件夹的名称长度超过八个字符,请重命名该文件名或文件夹名称。文件名和文件夹名称不得超过八个字符,且文件扩展名不得超过三个字符。以下是包含符合 8.3 约定的短文件名和文件夹名称的数据库路径示例: \Folder_1\Folder_2\AccessDb.mdb 以下是使用长文件名和文件夹名称的数据库路径示例:\FolderForFirstDatabase\FolderForSecondDatabase\ThisIsA_BigDatabase.mdb
有关 Windows 中长文件名的更多信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
226403
另外,如果您正在使用拆分数据库,则可使用 8.3 约定等价值替换前端数据库链接的文件名和文件夹名称。例如,假设您有以下长文件名和文件夹名称数据库路径:
(http://support.microsoft.com/kb/226403/
)
进行复制时短 (8.3) 文件名可能更改
\FolderForFirstDatabase\FolderForSecondDatabase\ThisIsA_BigDatabase.mdb 可以将前端数据库中的链接重命名为以下等价的短文件名和文件夹名称:\Folder~1\Folder~2\Thisis~1.mdb 以下示例阐释如何使用短文件名约定链接到具有长数据库路径的数据库:Function mcrLink() DoCmd.TransferDatabase acLink, "Microsoft Access", "\\ServerName\sharename\Folder~1\Folder~2\Thisis~1.mdb", acTable, "tblName1", "tblName1", False End Function 有关如何使用 8.3 约定等价值替换前端数据库链接的文件名和文件夹名称的更多信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章: 891176 Microsoft 提供的编程示例只用于说明目的,不附带任何明示或默示的保证。这包括但不限于对适销性或特定用途适用性的默示保证。本文假定您熟悉所演示的编程语言和用于创建和调试过程的工具。Microsoft 的支持工程师可以帮助解释某个特定过程的功能,但是他们不会修改这些示例以提供额外的功能或构建过程以满足您的特殊需求。
(http://support.microsoft.com/kb/891176/
)
从 Windows NT 4.0 升级到 Windows 2000 或 Windows XP 后,基于 Access 或基于 Jet 数据库的程序的性能下降
关闭共享冲突通知延迟您可以关闭共享冲突通知延迟以提高文件服务器的性能。为此,请在存储 Access 或基于 Jet 数据库引擎的程序数据库的文件服务器上按照下列步骤操作。警告:如果使用注册表编辑器或其他方法错误地修改了注册表,则可能导致严重问题。这些问题可能需要重新安装操作系统才能解决。Microsoft 不能保证您可以解决这些问题。修改注册表需要您自担风险。
150384
(http://support.microsoft.com/kb/150384/
)
访问在另一计算机上打开的共享文件时出现延迟
将后端数据库文件移到 NTFS 文件系统卷上如果 Access 或基于 Jet 数据库引擎的程序数据库位于基于文件分配表 (FAT) 的卷上,可通过将后端数据库文件移到 NTFS 卷上来提高性能。 有关 NTFS 的更多信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:100108 有关如何移动 Access 或 Jet 数据库引擎数据库文件的更多信息,请在 Access 的“帮助”中搜索“复制或移动 Access 文件”。
(http://support.microsoft.com/kb/100108/
)
FAT、HPFS 和 NTFS 文件系统概述
禁用自动生成短文件名在 NTFS 文件系统上禁用自动生成短文件名。为此,请在存储 Access 或基于 Jet 数据库引擎的程序数据库的文件服务器上按照下列步骤操作。 警告:如果使用注册表编辑器或其他方法错误地修改了注册表,则可能导致严重问题。这些问题可能需要重新安装操作系统才能解决。Microsoft 不能保证您可以解决这些问题。修改注册表需要您自担风险。
有关在 NTFS 上自动生成短文件名的更多信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章: 121007
有关更多信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
(http://support.microsoft.com/kb/121007/
)
如何在 NTFS 分区上禁止创建 8.3 格式的名称
210638 如果 Access 或 Jet 数据库引擎数据库文件位于 Windows Server 2003 文件服务器上,您可以关闭文件系统别名。别名是 Windows Server 2003 包含的一项功能。使用该功能,可以使多个长文件名或多个短文件名引用同一文件。禁用文件系统别名会增加基于 Windows Server 2003 的计算机上可用的服务器服务缓存,从而可以提高性能。
(http://support.microsoft.com/kb/210638/
)
如何禁用自动生成短文件名
重要说明:如果您的基于 Windows Server 2003 的计算机使用文件系统别名,例如装入点或重新分析点,则不建议您执行此过程。 要关闭文件服务器别名,请在存储 Access 或 Jet 数据库引擎数据库的 Windows Server 2003 文件服务器上按照下列步骤操作。 警告:如果使用注册表编辑器或其他方法错误地修改了注册表,则可能导致严重问题。这些问题可能需要重新安装操作系统才能解决。Microsoft 不能保证您可以解决这些问题。修改注册表需要您自担风险。
客户端优化下列方法说明如何在要访问 Access 或基于 Jet 数据库引擎的数据库的客户端上优化性能。启用高级文件名缓存在默认情况下,基于 Windows 2000 和基于 Windows XP 的操作系统仅缓存短文件名和短文件夹名称。也就是符合 8.3 约定的文件名和文件夹名称。您可以在基于 Windows 2000 或基于 Windows XP 的计算机上启用高级缓存,以便它还能缓存长文件名和长文件夹名称。这可以提高通过网络访问文件的性能。有关如何在 Windows XP Service Pack 1 和早期版本中启用高级缓存的更多信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章: 834350
有关如何在 Windows 2000 中启用高级缓存的更多信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
(http://support.microsoft.com/kb/834350/
)
在 Windows XP 中访问网络资源的速度比早期版本的 Windows 慢
843418 注意:Windows XP Service Pack 2 和 Windows Server 2003 已包含一种类型的高级缓存。但是,必须将下面注册表子项中的 InfoCacheLevel 注册表项设置为十六进制值 0x10 才能优化性能:
(http://support.microsoft.com/kb/843418/
)
在 Windows 2000 中访问网络资源或使用 Microsoft Access 时可能遇到性能降低问题
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\MRxSmb\Parameters 在基于 Windows XP 的计算机上优化追加查询基于 Windows XP 的计算机为发生的每个追加事务刷新缓存并将整个数据库写入文件服务器。通过在基于 Windows XP 的计算机上应用修补程序和更改 Windows 注册表条目 DisableFlushOnCleanup,您可以优化追加查询。有关如何在基于 Windows XP 的计算机上优化追加查询的更多信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章: 825433
(http://support.microsoft.com/kb/825433/
)
从基于 Windows XP 的客户端将数据追加到基于共享文件的数据库时性能下降
优化 Access 或基于 Jet 数据库引擎的数据库例程和方法下列建议可提高 Access 或基于 Jet 数据库引擎的程序使用的例程和方法的性能。
优化数据库性能的最佳做法在优化 Access 或基于 Jet 数据库引擎的程序性能时,建议执行下列最佳做法:
参考
有关 Access、Jet 数据库引擎和网络性能的更多信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
275085
(http://support.microsoft.com/kb/275085/
)
BUG:Access 2002 和 Office Access 2003 中链接表的性能下降
261000
(http://support.microsoft.com/kb/261000/
)
BUG:Access 2000 中链接表的性能下降
209126
(http://support.microsoft.com/kb/209126/
)
有关 Access 数据库查询性能的信息
288631
(http://support.microsoft.com/kb/288631/
)
整理和压缩数据库以提高性能
209126
(http://support.microsoft.com/kb/209126/
)
有关 Access 数据库查询性能的信息
290181
(http://support.microsoft.com/kb/290181/
)
在 Microsoft Access 中启用名称自动更正时用户打开对象的速度慢
240434
(http://support.microsoft.com/kb/240434/
)
如何使用 Jet 4.0 提高应用程序性能
289533
(http://support.microsoft.com/kb/289533/
)
到哪里查找有关在 Microsoft Access 中设计数据库的信息
870753
(http://support.microsoft.com/kb/870753/
)
Jet 4.0 数据库引擎 837001 后的修补程序包(2004 年 7 月 21 日版)的说明
303528
(http://support.microsoft.com/kb/303528/
)
如何保持 Jet 4.0 数据库处于最佳工作状态
208858
(http://support.microsoft.com/kb/208858/
)
ACC2000:优化客户端/服务器性能
239114
(http://support.microsoft.com/kb/239114/
)
如何获取 Microsoft Jet 4.0 数据库引擎的最新 Service Pack
891176
(http://support.microsoft.com/kb/891176/
)
从 Windows NT 4.0 升级到 Windows 2000 或 Windows XP 后,基于 Access 或基于 Jet 数据库的程序的性能下降
属性文章编号: 889588 - 最后修改: 2007年12月1日 - 修订: 5.3 这篇文章中的信息适用于:
Microsoft和/或其各供应商对于为任何目的而在本服务器上发布的文件及有关图形所含信息的适用性,不作任何声明。 所有该等文件及有关图形均"依样"提供,而不带任何性质的保证。Microsoft和/或其各供应商特此声明,对所有与该等信息有关的保证和条件不负任何责任,该等保证和条件包括关于适销性、符合特定用途、所有权和非侵权的所有默示保证和条件。在任何情况下,在由于使用或运行本服务器上的信息所引起的或与该等使用或运行有关的诉讼中,Microsoft和/或其各供应商就因丧失使用、数据或利润所导致的任何特别的、间接的、衍生性的损害或任何因使用而丧失所导致的之损害、数据或利润不负任何责任。 |


回到顶端








