我正在为一家小型办公室整修整个 IT 基础设施。他们有一台 Dell T410,除了用作 Win2k8 文件共享外什么都不做,因此我认为我可以在一台运行 Vista 的闲置台式机上复制其功能,同时关闭服务器进行重建。
一切都很好,但他们正在做的一件事是同时访问共享中的 Access 数据库。它在 T410 上工作得很慢,但是一旦我将其迁移到临时服务器,一次只能有一个用户使用它——其他用户会将其拖到无法使用的停止状态。查询暂停 30-60 秒。其他一切都运行良好。
这是我的前任必须处理的事情,办公室的女士们说他已经处理过了某物在服务器上将查询时间缩短至 5-10 秒。它们立即以单用户模式运行,但没有文档说明他为多用户减轻了这种影响。据我所知,服务器没有 RAMDISK、RAID 设置或任何特殊设置。
首先,我认为硬盘可能很慢,所以我设置了一个 RAMDISK 并在其上托管那个特定文件。单用户访问现在非常快,但多用户访问仍然一样慢。接下来,我认为网卡可能是一个瓶颈,但我查看了资源监视器,没有任何东西接近上限。我的下一个想法是责怪硬件/Vista,但它是一台戴尔酷睿 2 双核处理器,有 3GB 的 RAM,而 Vista Business 是我唯一有备用许可证的操作系统。应该足以完成手头的工作。
我看到过很多类似的抱怨,抱怨设计不良的 Access 数据库无法在多用户环境中使用,随后有人建议将数据库拆分为前端和后端,但我不愿意花太多时间调整 Access,因为重建服务器后的下一个项目是重新设计 SQL Server 中的整个后端。此外,上一个家伙能够半修复问题而不需要彻底检查任何东西(我知道的就这么多)。但与此同时,这正在扼杀生产力。
新旧服务器之间可能有哪些变化?我可以更改哪些简单的操作来将查询时间缩短到合理的延迟?
答案1
拆分为 fe、be 并不复杂。然后从 be 链接表。这些是 ms access 的部署基础。如果您面临 msql 构建,那么拆分数据库将非常容易。