我檢查了不同的帖子,例如: Is there a way to use 'pool_reset_connection' from mysql-connector-python with MariaDB 10.4.7?但我無(wú)法解決我的問(wèn)題,我有一個(gè)用 python 2.7 編寫(xiě)的程序;現(xiàn)在我將所有內(nèi)容都移至 python 3,但我遇到了 mysql.connector 的問(wèn)題。在這一刻,我正在使用 python 3.8.2 和 mysql-connector-python==8.0.19 但我嘗試使用不同版本的 python 3,但是當(dāng)我嘗試關(guān)閉時(shí),mysql.connector 總是出現(xiàn)相同的錯(cuò)誤聯(lián)系。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我不知道如何解決它,我嘗試以不同的方式增加池并擁有不同的池,或者只是關(guān)閉連接,但是在我得到池耗盡后的一個(gè)大項(xiàng)目中,所以我真的需要關(guān)閉連接但我無(wú)法解決這個(gè)問(wèn)題; 有人可以幫我嗎?我什至嘗試按照其他 stackoverflow 票證中的說(shuō)明更改 mysql-connector 庫(kù),但每次更改時(shí)都會(huì)遇到其他問(wèn)題。
1 回答

牛魔王的故事
TA貢獻(xiàn)1830條經(jīng)驗(yàn) 獲得超3個(gè)贊
MySQL Connector/Python 如何檢測(cè)服務(wù)器版本是個(gè)問(wèn)題:
由于復(fù)制不適用于 2 位數(shù)的主要版本號(hào),MariaDB 使用了所謂的 RPL hack,它是在 10.0 版本中引入的,并將以下版本號(hào)發(fā)送給客戶端5.5.5-10.4.13-MariaDB
。另請(qǐng)參閱MariaDB 版本字符串的第一部分是什么意思。
由于 MariaDB 連接器/Python 不知道它,它假定服務(wù)器版本號(hào)是 5.5.5,并且在檢查 >= 5.7.3 時(shí)會(huì)引發(fā) NotSupportedError 異常。
您可以修補(bǔ) MySQL Connector/Python(在 do_handshake() 中修復(fù) server_version),也可以嘗試 MariaDB Connector/Python。它目前處于測(cè)試階段,但預(yù)計(jì)本月仍將推出 GA ( pip3 install mariadb
)
添加回答
舉報(bào)
0/150
提交
取消