我查看了不同的帖子,比如:Is there a way to use 'pool_reset_connection' from mysql-connector-python with MariaDB 10.4.7?
但是我无法解决我的isue,我有一个用python2.7编写的程序;现在我把所有东西都移到python3,但是我在mysql.connector上遇到了问题。
在这一刻,我使用python3.8.2和mysql-连接器- python =8.0.19,但是我尝试使用不同版本的python 3,但是当我试图关闭连接时,在mysql.connector上总是会遇到相同的错误。
Traceback (most recent call last):
File "C:\Python38\lib\site-packages\mysql\connector\connection.py", line 819, in reset_session
self.cmd_reset_connection()
File "C:\Python38\lib\site-packages\mysql\connector\connection.py", line 1166, in cmd_reset_connection
raise errors.NotSupportedError("MySQL version 5.7.2 and "
mysql.connector.errors.NotSupportedError: MySQL version 5.7.2 and earlier does not support COM_RESET_CONNECTION.
...
...
mysql.connector.errors.OperationalError: 1047 (08S01): Unknown command我不知道如何解决这个问题,我试着用不同的方法增加池和不同的池,或者只是关闭连接,但是在一个大的项目中,我的池排气了,所以我真的需要关闭连接,但我不能解决这个问题,有人能帮我吗?
我甚至试图更改mysql-连接器库,就像在其他堆栈溢出票据中解释的那样,但是每次我更改它时,我都会遇到其他问题。
发布于 2020-04-12 17:09:10
MySQL连接器/Python如何检测服务器版本是一个问题:
由于复制不适用于2位主版本号,MariaDB使用了一个称为RPL的方法,它是在10.0版中引入的,并将下面的版本号发送给客户端5.5.5-10.4.13-MariaDB。另见What does the first part of the MariaDB version string mean。
由于MariaDB连接器/Python不知道它,所以它假设服务器版本号为5.5.5,并在检查>= 5.7.3时将引发>=异常。
您可以修补MySQL连接器/Python(在do_handshake()中修复server_version ),也可以尝试MariaDB连接器/Python。它目前是测试版,但GA预计本月仍在运行(pip3 install mariadb)
https://stackoverflow.com/questions/61173405
复制相似问题