Centos7使用python3连接inception报错解决办法

inception支持mysqldb库但不支持pymysql库,无奈mysqldb库不兼容py3,直接使用pymysql 连接inception报错如下:

ValueError: invalid literal for int() with base 10: 'Inception2'

需要修改pymysql源码修改connections.py及 cursors.py文件

# find / -name "connections.py"
# find / -name "cursors.py"

connections.py文件修改:
781行:

 781     def _request_authentication(self):
 782         # https://dev.mysql.com/doc/internals/en/connection-phase-packets.html#packet-Protocol::HandshakeResponse
 783         #if int(self.server_version.split('.', 1)[0]) >= 5:
 784         #    self.client_flag |= CLIENT.MULTI_RESULTS
 785         try:
 786             if int(self.server_version.split('.', 1)[0]) >= 5:
 787                 self.client_flag |= CLIENT.MULTI_RESULTS
 788         except:
 789             if self.server_version.split('.', 1)[0] == 'Inception2':
 790                 self.client_flag |= CLIENT.MULTI_RESULTS

cursors.py文件修改:
355行:

355     def _show_warnings(self):
356         if self._warnings_handled:
357             return
358         self._warnings_handled = True
359         #if self._result and (self._result.has_next or not self._result.warning_count):
360         if self._result:
361             return

修改完后可用。

转载于:https://www.cnblogs.com/aresxin/p/1w3rwf.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值