使用SQL Server后端访问数据库:多个用户的访问速度急剧下降



我已经将Access 2007数据库迁移到SQL Server 2008 R2后端,保留了带有链接表的Access前端。少数用户的性能良好。

昨天,该应用程序向多个用户开放,到了下午,性能就糟透了。前端打开或关闭或做任何事情都需要几分钟的时间。关闭的延迟似乎特别奇怪,因为它是通过主菜单上的一个按钮完成的,该按钮只调用Application.Quit。根本不做任何其他事情。

我发现旧的LDBView实用程序似乎对.lacdb文件有效。它显示了11个登录用户和另外15个不再登录的用户。它没有显示用户名,只显示他们连接的机器名。大多数情况下,这些机器名是两个虚拟主机,所以我不知道它们实际上是不同的用户,还是被多次报告的同一用户(对.lacdb文件的格式了解不够,无法判断)。

我复制了一份麻烦的Access前端文件(.accdb文件),并从与原始文件相同的网络位置运行了副本。运行良好。因此,问题似乎不在网络、SQL Server数据库中,也不在Access前端以某种方式损坏。

消除了这些可能性,问题似乎与多个用户同时使用同一个Access前端有关。在表迁移到SQL Server之前,原始的Access数据库对相同数量的用户运行良好。因此,前端的基本设计似乎能够支持多个用户。

我该如何追踪Access前端中争用问题的来源?对我来说,除了查看.lacdb文件中并发用户的数量外,似乎没有任何关于正在发生的事情的可见性。

顺便说一句,由于最初的Access数据库对多个用户运行良好,我被告知不可能每个用户都有自己的Access前端副本,因为这将是一场维护噩梦。

用户不应该使用相同的前端副本。他们每个人都应该有自己的副本,可以保存在个人驱动器中。

您保留自己的前端副本,对其进行修改,然后将其重新分发给用户,以替换他们的旧版本。

共享单个前端副本是绝对不允许的。这是一场噩梦。。并且是您遇到问题的最可能原因。

最新更新