mac Django 连接mysql
mac django2.2正确连接mysql方式
mac Django 电脑连接mysql时候会出现一些错误,因为版本问题。以下操作Django2.2.22亲测有效
1、先 pip install pymsql
在settings中添加数据库相关配置
'default': {
'ENGINE': 'django.db.backends.mysql', # 数据库引擎
'NAME': 'db2', # 数据库名称
'HOST': '127.0.0.1', # 数据库地址,本机 ip 地址 127.0.0.1
'PORT': 3306, # 端口
'USER': 'root', # 数据库用户名
'PASSWORD': '12345678', # 数据库密码
}
2、# 在与 settings.py 同级目录下的 init.py 中引入模块和进行配置
import pymysql
pymysql.install_as_MySQLdb()
3、终端命令行方式导入mysql-connector(命令失败升级pip到最新试试 pip install --upgrade pip )
pip install mysql-connector
4、终端命令行方式导入mysql-client(命令失败升级pip到最新试试 pip install --upgrade pip )
pip install mysql-client
5、此时运行还是报错,点击报错信息
File "/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-packages/django/db/backends/mysql/operations.py", line 146, in last_executed_query
query = query.decode(errors='replace')
修改一行代码聪明如你,看图操作
看不懂图那就点击报错信息
File "/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-packages/django/db/backends/mysql/operations.py", line 146, in last_executed_query
query = query.decode(errors='replace')
把146行代码 屏蔽了,复制在下面把decode改成encode
#query = query.decode(errors='replace')
query = query.encode(errors='replace')
问题描述
下面报错信息就都解决了