Alm*_*itt 3 python mysql pymysql
我正在尝试通过 pymysql 连接到 mysql 数据库。当我通过终端通过 SSH 进入数据库时,一切正常。所以,这个信息是正确的。但是,当我在使用 pymysql 时输入相同的信息时,出现以下错误:
pymysql.err.InternalError: Packet sequence number wrong - got 45 expected 0
Run Code Online (Sandbox Code Playgroud)
pymysql 版本:0.9.2
代码(请注意,出于安全原因,我更改了有关主机、用户、密码、数据库和端口的信息)。
import pymysql.cursors
connection = pymysql.connect(host='myhost',
user='userid',
password='mypassword',
db='my_database',
charset='utf8mb4',
port=9047,
cursorclass=pymysql.cursors.DictCursor)
except Exception as e:
print('connection failed')
print(e)
Run Code Online (Sandbox Code Playgroud)
这段代码更早运行。我不得不为另一个项目升级包,现在它停止工作。我想这可能是原因。
有没有人遇到过这个?如果是这样,你是如何解决的?
谢谢!
*我也尝试过不同的端口。我在这里注意到他们使用了端口 22 或 3306,但是使用端口 22,我收到超时错误和端口 3306,我收到拒绝访问错误。
好吧,我明白了。
我只需要删除
cursorclass=pymysql.cursors.DictCursor
Run Code Online (Sandbox Code Playgroud)
现在可以了:)
感谢大家!