Python pymysql.err.InternalError:数据包序列号错误-应为0
我正在尝试通过pymysql连接到mysql数据库。当我通过终端SSH进入数据库时,一切正常。所以,这些信息是正确的。但是,当我将相同的信息放入使用pymysql时,会出现以下错误:Python pymysql.err.InternalError:数据包序列号错误-应为0,python,mysql,pymysql,Python,Mysql,Pymysql,我正在尝试通过pymysql连接到mysql数据库。当我通过终端SSH进入数据库时,一切正常。所以,这些信息是正确的。但是,当我将相同的信息放入使用pymysql时,会出现以下错误: pymysql.err.InternalError: Packet sequence number wrong - got 45 expected 0 pymysql版本:0.9.2 代码(请注意,出于安全原因,我更改了有关主机、用户、密码、数据库和端口的信息) 这段代码在早些时候起作用。我不得不升级另一个项目的
pymysql.err.InternalError: Packet sequence number wrong - got 45 expected 0
pymysql版本:0.9.2
代码(请注意,出于安全原因,我更改了有关主机、用户、密码、数据库和端口的信息)
这段代码在早些时候起作用。我不得不升级另一个项目的软件包,现在它停止工作了。我想这可能就是原因
以前有人碰到过这个吗?如果是,你是如何解决的
谢谢
*我也尝试了不同的端口。我注意到他们使用了端口22或3306,但是对于端口22,我得到了一个超时错误,而端口3306,我得到了一个拒绝访问错误 我认为原因是您使用多线程一次性连接到mysql,mysql服务器在此返回错误响应。好的,我找到了答案 我只需要把它移走
cursorclass=pymysql.cursors.DictCursor
现在它起作用了:)
谢谢大家 谢谢你的回复!知道如何修复它吗?我不知道更改cursorclass和删除Cursor是如何解决这个问题的。你确定这是相关的还是可以解释?还有,现在你不用游标了。。。大多数人都想要/需要.pymysql.connect(..,cursorclass=pymysql.cursors.DictCursor)这偶尔会导致错误。如果您想要DictCursor,请从连接获取它,比如cursor=conn.cursor(pymysql.cursors.DictCursor)
cursorclass=pymysql.cursors.DictCursor