gpt4 book ai didi

python - MySQL并行选择请求(python)

转载 作者:行者123 更新时间:2023-11-29 21:34:05 25 4
gpt4 key购买 nike

我看到了一个“类似”的帖子Executing MySQL SELECT * query in parallel ,买我的问题是不同的,这也没有得到解答,所以我猜它不是重复的。

我正在尝试并行执行 MySQL 选择请求。原因是因为我需要快速响应。当我并行连接时,我也设法创建了请求,但由于连接需要比实际的 select 更多的时间。连接一次会更快,然后执行 select在平行下。

我的方法:

import mysql.connector
import multiprocessing

def func(id):
return GetFasta(id, cnx).sequence()

cnx = mysql.connector.connect(user='U_NAME', host='IP_ADDR', database='DB_NAME')
p = multiprocessing.Pool()

for x in p.imap_unordered(func, ["Q32P44", "ASD"]):
print x

p.close()
p.join()
cnx.close()

GetFastaClass它按预期工作,需要一个连接器和一个 ID,并执行简单的 SELECT与那些。

如果我执行这个脚本,解释器就会卡住,我必须手动终止它。我想这要么不是那么微不足道,要么不可能 select与一个连接器并联。

是吗?

有什么解决办法吗?

最佳答案

经过大量研究,我找到了“解决方案”。事实上这是不可能的。 MySQL 不支持来自同一 用户 连接的并行查询。这是绝对不可能的,而且也没有计划添加这个。

你能得到的最好的就是我实现它的方式,所以也并行连接。

在其他一些类型的数据库中这是可能的,但现在我会坚持使用 MySQL 并使用并行连接方法

关于python - MySQL并行选择请求(python),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35040848/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com