我最近把我的网站移到了一个新的服务器上。我有一些基本的python脚本,其中包含MySQL数据库中的access数据。在旧服务器上我们没有问题。在新服务器上:MySQLWorkbench可以轻松连接并执行所有查询
使用python的相同(SELECT)查询在5%的时间内工作,其余95%的时间在查询期间超时或连接丢失
例如,该表有100000行,在MySQLWorkbench中选择整个行就可以了。3秒后返回。在
在python中,相同的查询永远不起作用,当LIMIT 2999有效时,仅LIMIT 3010会导致它超时。在
在本地或远程运行脚本时观察到的效果相同
为了弄清楚数据库、数据库服务器和服务器本身是否存在阻止python(但不是MySQLWorkbench)正常工作的设置。在
查询和代码,以防他们感兴趣:query = "SELECT * FROM wordpress.table;"
conn = MySQLConnection(**mysqlconfig)
cursor = conn.cursor()
cursor.execute(query)
rows = cursor.fetchall()
我不知道服务器的细节,但它有足够的能力让MySQLWorkbench正常工作,只是python似乎无法正常工作
*****编辑***
为了查看这个问题是否是由于查询返回太多的数据而导致的,我考虑使用OFFSET和LIMIT在一个较大的查询中循环,每个查询有10行。在
^{pr2}$
预期:这将很快在较小的块中处理较大的查询
发生的情况:它比之前被卡住的3000行还远,但在一些迭代之后最终撞到了墙上。同样不一致的是,运行脚本10次会导致n每次到达不同的点。在