我使用的是Python 2.5.4版本,安装MySQL 5.0版本和Django。Django和Python配合得很好,但MySQL不行。我在Windows Vista中使用它。
当前回答
Python 3
确定进口顺序:
#BAD
import MySQLdb # <------ NOT here
import pymysql
pymysql.install_as_MySQLdb()
#GOOD
import pymysql
pymysql.install_as_MySQLdb()
import MySQLdb # <------- HERE!
其他回答
适用于CentOS 8和Python3
安装python3-mysqlclient
适用于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>
这意味着数据库已正确连接。
在我通过docker镜像重新安装Ubuntu 18.04时,上述方法都不适用。
下面为我解决了这个问题:
安装荷兰python3-mysqldb
如果你正在使用SQLAlchemy,错误在/site-packages/ SQLAlchemy /dialect /mysql/mysqldb.py:
from ...connectors.mysqldb import (
MySQLDBExecutionContext,
MySQLDBCompiler,
MySQLDBIdentifierPreparer,
MySQLDBConnector
)
因此,您可能错过了SQLAlchemy的mysqldb连接器,解决方案是在安装mysql-python模块后重新安装SQLAlchemy。
我在ubuntu (linux),对我有用的是
sudo apt-get install python3-dev default-libmysqlclient-dev build-essential
最后
pip install mysqlclient
推荐文章
- 如何使x轴和y轴的刻度相等呢?
- Numpy在这里函数多个条件
- 在Python中,使用argparse只允许正整数
- 如何排序mongodb与pymongo
- 不可变与可变类型
- 列表是线程安全的吗?
- 操作系统。makdirs在我的路径上不理解“~”
- 如何在Django模板中获得我的网站的域名?
- 在django Forms中定义css类
- 如何在Python中scp ?
- Numpy Max vs amax vs maximum
- 我应该在.gitignore文件中添加Django迁移文件吗?
- 每n行有熊猫
- 实例属性attribute_name定义在__init__之外
- 如何获取在Python中捕获的异常的名称?