pymysql KeyError:255

一、环境:

       1.语言:python2.7.13

       2.系统:win7

       3.数据库:mysql 8.0 

二、问题描述:

       今天在部署一个客户程序的时候出现KeyError:255,主要是pymysql连接数据库的时候出现报错。

三、解决方案:

       1.卸载旧版pymysql库换成新版pymysql库。注意:因为新版的pymysql库已经不支持python2了,所以要想不换python版本,又要解决问题看方案2.

        2.更改pymysql源码(从国外网站上看到的)

           去pymysql安装包中找到这个文件connectors.py(一般路径是这个..\Lib\site-packages\pymysql)

Original (lines 1268-1269)

self.server_language = lang
self.server_charset = charset_by_id(lang).name  

Replace (lines 1268 - 1272)

self.server_language = lang
try:
    self.server_charset = charset_by_id(lang).name
except KeyError:
    self.server_charset = None

大概的意思把异常屏蔽了,如果出现这个异常就将值设置为None

        3.如果有网络条件的的话,也可以尝试用这个方式。卸载就的包,安装新的包。注意:大部分python2的pip是旧的,再更新新的包前,先程序pip.

python -m pip uninstall pymysql
python -m pip install pymsyql

参考:https://stackoverflow.com/questions/45368336/error-keyerror-255-when-executing-pymysql-connect/47622747

猜你喜欢

转载自blog.csdn.net/u013584315/article/details/113408516
255
今日推荐