我使用的是Python 2.5.4版本,安装MySQL 5.0版本和Django。Django和Python配合得很好,但MySQL不行。我在Windows Vista中使用它。


当前回答

适用于Python 3+版本

安装mysql-connector如下:

pip3 install mysql-connector 

示例Python DB连接代码:

import mysql.connector
db_connection = mysql.connector.connect(
  host="localhost",
  user="root",
  passwd=""
)
print(db_connection)

输出:

> <mysql.connector.connection.MySQLConnection object at > 0x000002338A4C6B00>

这意味着数据库已正确连接。

其他回答

在mac上的mysql.connector.python 8.0.24版本中遇到过这个问题(如果代码基相同,那么在windows中也应该会出现这个问题)。这个文件在51行导入了“from django.db.backends.mysql.base import DatabaseWrapper as MySQLDatabaseWrapper”。导入的文件具有以下代码14-20(您收到的确切代码和错误是代码的一部分

try:
    import MySQLdb as Database
except ImportError as err:
    raise ImproperlyConfigured(
        'Error loading MySQLdb module.\n'
        'Did you install mysqlclient?'
    ) from err

误差在这里形成。不知道为什么这个导入会在不同版本的mysql连接器中返回,但8.0.23没有导入,所以我恢复到那个版本,错误消失了…这是在你希望继续使用mysql.connector.python的情况下

我已经尝试了上面的方法,但仍然没有名为'MySQLdb'的模块,最后,我成功了

easy_install mysql-python

我的环境是unbuntu 14.04

适用于Python 3+版本

安装mysql-connector如下:

pip3 install mysql-connector 

示例Python DB连接代码:

import mysql.connector
db_connection = mysql.connector.connect(
  host="localhost",
  user="root",
  passwd=""
)
print(db_connection)

输出:

> <mysql.connector.connection.MySQLConnection object at > 0x000002338A4C6B00>

这意味着数据库已正确连接。

我个人建议使用pymysql,而不是使用真正的MySQL连接器,后者为您提供了一个独立于平台的接口,并且可以通过pip安装。

您可以像这样编辑SQLAlchemy URL模式: mysql + pymysql: / /用户名:passwd@host /数据库

Python 3

确定进口顺序:

#BAD
import MySQLdb             # <------ NOT here
import pymysql
pymysql.install_as_MySQLdb()

#GOOD
import pymysql
pymysql.install_as_MySQLdb()
import MySQLdb              # <------- HERE!