在我们公司,我们必须支持构建在 Microsoft Access 2010 作为前端和 SQL Server 2008 R2 作为后端的大型遗留系统。后端 SQL 服务器在 Windows Server 2008 R2 上运行。目前,我们的用户在 Windows Server 2008 R2 上处理终端服务器会话。几天前,我们开始使用最新版本的 Windows 10 测试 Windows Server 2019 和笔记本电脑。我们发现在不同环境中执行相同的 Access 数据库时性能差异很大。
例如,创建报告需要 27 秒(新环境)而不是 7 秒(旧环境)。database.accdb 相同,后端相同(仍然是 Windows 2008 R2 Server 和 SQL Server 2008 R2 和 SP2),只是执行环境 (Windows) 发生了变化。
你们中有人知道如何解释吗?
在 Access 2010 中,SQL 服务器表使用 System-DSN 数据源链接。在旧环境中使用 ODBC(驱动程序:SQL Server,版本:6.01.7601.17514)。
在新环境中,我测试了以下驱动程序:
- 适用于 SQL Server 的 ODBC 驱动程序 11 (2014.120.5543.11)
- 适用于 SQL Server 的 ODBC 驱动程序 17 (2017.173.01.01)
- SQL 服务器 (10.00.17763.01)
- SQL Server Native Client 10.0 (2009.100.4000.00)
- SQL Server Native Client 11.0 (2011.110.5058.00)
我使用不同的驱动程序创建了一个新的 System-DSN,并更新了 Access 中的链接表。但无论如何,性能仍然很差。我还测试了 Office 2019 附带的最新版本的 Access,但速度又慢。