问题背景
在Django框架下连接MySQL数据库时显示如下错误:
开始以为是SSl验证的问题,看了很多帖子去关闭SSL,但都没有用。
如何解决
最后参照这篇帖子修改了settings.py和init.py,错误就消失了。
django如何连接Mysql中已有的数据库_ChangYan.的博客-CSDN博客s
首先
确保你已经下载了pymysql,然后在__init__.py文件中添加如下代码:
import pymysql
pymysql.install_as_MySQLdb()
然后
确保你已经在settings.py文件中注册了你的app
最后
在settings.py文件中找到数据库设置,按照下图修改:
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': 'online_compiler', #你的数据库的名字
'USER': 'root', #你的数据库的用户名,一般为root
'PASSWORD': '123456', #密码
'HOST': 'localhost', #服务器地址,我是在本地做测试
'PORT': 3306, #服务器端口,一般为3306
'OPTIONS': {'init_command': "SET sql_mode='STRICT_TRANS_TABLES'"} #加了这句错误就消失了
}
}