简体   繁体   English

Python3.2:安装MySQL-python失败,错误“没有名为ConfigParser的模块”

[英]Python3.2: Installing MySQL-python fails with error “No module named ConfigParser”

I want to use SQLAlchemy with MySQL database. 我想在MySQL数据库中使用SQLAlchemy。 I've created the Engine and tried to connect but I get an error as follows. 我已经创建了引擎并尝试连接但是我收到如下错误。

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)

That fails with the error: 失败并出现错误:

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

Searching for that I found that you have to have to install MySQLdb for python to play nice with MySQL. 搜索我发现你必须安装MySQLdb for python才能与MySQL一起玩。 So trying to install it with either pip-3.2 or easy_install-3.2 fails as below. 因此尝试使用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

I then figure I have to install configparser so when I try to do so it also fails 然后我想我必须安装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

So, my original issue is trying to get Python to work with MySQL. 所以,我最初的问题是试图让Python与MySQL一起工作。 But trying to resolve that I can't be able to install MySQLdb. 但试图解决我无法安装MySQLdb。

EDIT Gone ahead as instructed by @robertklep below and installed pymsql3. 编辑按照下面@robertklep的指示前进并安装了pymsql3。

sudo pip-3.2 install pymysql3

Regards, 问候,

MySQLdb doesn't have Python 3 support. MySQLdb没有Python 3支持。 Try an alternative which has, like PyMySQL (which is supported by SQLAlchemy as well ). 尝试一种替代方案,如PyMySQLSQLAlchemy支持 )。

EDIT : there's also this project . 编辑 :还有这个项目

https://www.pythonanywhere.com/wiki/UsingMySQL https://www.pythonanywhere.com/wiki/UsingMySQL

pip install --user https://dev.mysql.com/get/Downloads/Connector-Python/mysql-connector-python-1.1.6.tar.gz

Then, update your settings.py to use the oracle django backend, "mysql.connector.django": 然后,更新settings.py以使用oracle django后端“mysql.connector.django”:

DATABASES = {
    'default': {
        'ENGINE': 'mysql.connector.django',
         ...

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM