MySQLdb.Connect引发OperationalError:无法连接到MySQL服务器
使用 multithreading.dummy.Pool 和 MySQLdb 来向 MySQL 数据库发送查询时,遇到了错误:
_mysql_exceptions.OperationalError: (2003, "Can't connect to MySQL server on
'127.0.0.1' (10055)")
有没有人能帮我解决这个问题?
谢谢大家。
附言:抱歉我的英语不好。
更新:一些代码:
import MySQLdb as mdb
from multiprocessing.dummy import Pool as ThreadPool
def worker1(target):
con = mdb.connect(HOST, USER, PASSWORD, DB, charset='utf8')
cur = con.cursor()
cur.execute("insert into links values('"+target[0]+"', '"+target[1]+"', '"+target[2]+"','"+target[3]+"')")
con.commit()
con.close()
def main():
pool = ThreadPool(200)
pool.map(worker1, links)
pool.close()
pool.join()
1 个回答
0
MySQL默认允许同时有100个连接。如果你的代码创建了200个线程,每个线程都试图连接到数据库,那么就会有100个连接失败。
可以考虑使用连接池。或者,告诉MySQL允许同时连接更多的用户: