我将访问拆分数据库后端移动到MySQL服务器。前端启动表单运行pass-trough查询。加载启动表单需要1.25秒。没有查询,它是0.05秒。 我在服务器端删除连接后尝试运行查询。查询在1.21秒内完成。打开连接后运行相同的查询时,它将在0.016秒完成。
看来,Access需要1.2秒才能打开新的ODBC连接。有没有办法加快这个?使用mysqlslap,我可以打开&每秒下降60个连接,所以它真的不需要1.2秒。
配置:
查询:
Dim r as recordset, db as database
Set db = currentdb
Set r = db.Openrecordset(ptqueryname)
我尝试使用select 1;
,但查询仍然在1.2秒内完成。
答案 0 :(得分:0)
我使用ODBC工作的ODBC:
用于TCP In和TCP6 In防火墙中的MySQL端口3306;
位于/etc/my.cnf' bind-address = 127.0.0.1' to' #bind-address = 127.0.0.1'而且,我认为需要重新启动服务器;
MySQL数据库(在DirectAdmin中)授权您的个人IPv4和/或IPv6;
此外: - MySQL数据库的MS Access VBA模块中的参数字符串: 公共常量gloODBCParameters作为字符串=" PORT = 3306; SSLmode =验证满; TextAsLongVarchar = 0; UseDeclareFetch = 0; LANGUAGE =美国英语; INITSTMT =设定WAIT_TIMEOUT = 600; FOUND_ROWS = 1&#34 ;;
注意:由于隐私,我的提供商经常切换我的IPv6地址。这是一个很好的设置,所以我不再使用固定的IPv6地址授权我的数据库。然后使用IPv4地址与服务器联系。