我想在MySQL数据库中使用SQLAlchemy。我创建了引擎并尝试连接,但出现如下错误。Python3.2:安装MySQL-python失败,出现错误“No module named ConfigParser”
from sqlalchemy import create_engine
from sqlalchemy.ext.declarative import declarative_base
Engine = create_engine('mysql+mysqldb://dbuser:[email protected]/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
搜索,我发现,你必须有安装MySQLdb的Python的发挥好与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
问候,
感谢您的。昨天浪费了整整一天。我看到有pymysql3和pymysql_sa,它声明pymysql_sa是SQLAlchemy的PyMySQL方言。那么我应该安装哪个?鉴于pymysql_sa与sqlalchemy特别合作,pymysql_sa更有优势吗? – lukik 2013-03-01 10:17:36
发现了“硬道路”。尝试安装pymysql_sa并失败。最有可能的是它与Python3不兼容。所以,是的,坚持与pymysql3。谢谢。 – lukik 2013-03-01 10:23:09
我尝试使用pymysql3和我[遇到问题](http://stackoverflow.com/questions/15170450/sqlalchemypymysql-error-sqlalchemy-util-queue-empty),正如指出sqlalchemy有一个错误。你有解决方法吗? – lukik 2013-03-03 04:45:20