Python3.2 : Installing MySQL-python fails with error "No module named ConfigParser"

标签 python pip python-3.2

我想将 SQLAlchemy 与 MySQL 数据库一起使用。我已经创建了引擎并尝试连接,但出现如下错误。

from sqlalchemy import create_engine
from sqlalchemy.ext.declarative import declarative_base
Engine = create_engine('mysql+mysqldb://dbuser:pass@localhost/mydb')
Base = declarative_base(Engine)

失败并出现错误:

File "/usr/local/lib/python3.2/dist-packages/SQLAlchemy-0.8.0b2-py3.2.egg/sqlalchemy/connectors/mysqldb.py", line 57, in dbapi
return __import__('MySQLdb')
ImportError: No module named MySQLdb

通过搜索,我发现您必须为 Python 安装 MySQLdb 才能很好地与 MySQL 配合使用。因此,尝试使用 pip-3.2 或 easy_install-3.2 安装它会失败,如下所示。

sudo pip-3.2 install MySQL-python
Downloading/unpacking MySQL-python
Running setup.py egg_info for package MySQL-python
Traceback (most recent call last):
  File "<string>", line 16, in <module>
  File "/tmp/pip-build/MySQL-python/setup.py", line 14, in <module>
    from setup_posix import get_config
  File "setup_posix.py", line 2, in <module>
    from ConfigParser import SafeConfigParser
ImportError: No module named ConfigParser
Complete output from command python setup.py egg_info:
Traceback (most recent call last):
File "<string>", line 16, in <module>
File "/tmp/pip-build/MySQL-python/setup.py", line 14, in <module>
from setup_posix import get_config
 File "setup_posix.py", line 2, in <module>
from ConfigParser import SafeConfigParser
ImportError: No module named ConfigParser

然后我想我必须安装 configparser 所以当我尝试这样做时它也会失败

Original exception was:
Traceback (most recent call last):
 File "<string>", line 3, in <module>
 File "/usr/local/lib/python3.2/dist-packages/distribute-0.6.34-py3.2.egg/setuptools/__init__.py", line 2, in <module>
from setuptools.extension import Extension, Library
File "/usr/local/lib/python3.2/dist-packages/distribute-0.6.34-py3.2.egg/setuptools/extension.py", line 2, in <module>
import distutils.core
File "/usr/lib/python3.2/distutils/core.py", line 19, in <module>
from distutils.config import PyPIRCCommand
File "/usr/lib/python3.2/distutils/config.py", line 8, in <module>
from configparser import ConfigParser
 File "configparser.py", line 122

因此,我最初的问题是尝试让 Python 与 MySQL 一起工作。但是试图解决我无法安装 MySQLdb 的问题。

编辑 按照下面@robertklep 的指示继续并安装 pymsql3。

sudo pip-3.2 install pymysql3

问候,

最佳答案

MySQLdb 不支持 Python 3。尝试一个替代方案,例如 PyMySQL (即 supported by SQLAlchemy as well )。

编辑:还有this project .

关于Python3.2 : Installing MySQL-python fails with error "No module named ConfigParser",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15140855/

相关文章:

python - 无法为mysql配置django

Python:遍历目录和子目录

Python 从字符串中删除第一个数字,如果它是 0

python - 使用 matplotlib fill_between 在两条极坐标曲线之间填充

python - 安装 jupyter 笔记本的库

Python:为什么 pip install 不从 sdist 部署我的代码?

python - VirtualEnv - Python 3.2 - 包给出 ImportError (但在 2.7 中没有)

python - 在 RHEL5 上找不到 pip 命令

c - PyFile_Type 替换为 ..?

python - 尝试安装 argh-0.24.1 Python 3.2 时出错