【发布时间】:2016-06-21 14:18:57
【问题描述】:
我正在运行 MySQLdb v1.2.3 并收到以下错误:
LookupError: unknown encoding: utf8mb4
This answer 建议将 MySQLdb 更新到 1.2.5 版本。我更新了,现在收到此错误:
ImportError: this is MySQLdb version (1, 2, 5, 'final', 1), but _mysql is version (1, 2, 3, 'final', 0)
我不确定如何更新_mysql 或这将如何改变我的设置。这只是一个 python 模块还是以某种方式连接到我的 MySQL 服务器?
编辑:我试过运行以下三种方法:
sudo pip uninstall mysql-python
sudo pip install mysql-python
sudo pip uninstall mysql-python
sudo pip install mysql-python==1.2.5
sudo pip install mysql-python --upgrade
卸载时我得到
/usr/local/lib/python2.7/dist-packages/_mysql.so
/usr/local/lib/python2.7/dist-packages/_mysql_exceptions.py
/usr/local/lib/python2.7/dist-packages/_mysql_exceptions.pyc
Proceed (y/n)? y
Successfully uninstalled MySQL-python-1.2.3
之后我无法导入MySQLdb 或_mysql,但重新安装总是给我_mysql 1.2.3 版。
第二次编辑/解决方案:原来_mysql 安装在服务器上的两个不同位置。如上所述,卸载/安装将_mysql 升级到v1.2.5,但每当我导入MySQLdb 时,都会优先考虑pip 未触及的_mysql 的另一个版本。
【问题讨论】:
-
@alexander.polomodov 看起来相似,但问题相反。该问题更新 MySQLdb 以匹配
_mysql,我正在尝试更新_mysql以匹配MySQLdb(因为我需要特定版本的MySQLdb)。与您发布的问题有很多类似的问题,但没有一个解决相反的问题。另请注意,该链接中的某些 cmets 也会寻求反向帮助。 -
所以,问题归结为“如何升级 MySQLdb?”
-
你用的是什么版本的mysql?文档解释了 _mysql 是什么 mysql-python.sourceforge.net/MySQLdb.html#mysql ,最后一个版本是几年前的。您应该查看 github 页面 github.com/farcepest/MySQLdb1。 dev.mysql.com/downloads/connector/python 也可能感兴趣
-
你在运行什么平台(Debian/red-hat linux?)这是系统依赖问题。
标签: python mysql mysql-python