1.前提:
(1)在项目的settings.py里修改了如下配置
DATABASES = {
'default': {
# 'ENGINE': 'django.db.backends.sqlite3',
# 'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),
'ENGINE': 'django.db.backends.mysql', # 数据库引擎
'NAME': 'books', # 数据库名称
'HOST': '127.0.0.1', # 数据库地址,本机 ip 地址
'PORT': 3306, # 端口
'USER': 'root', # 数据库用户名
'PASSWORD': '1234han', # 数据库密码
}
}
(2)安装了PyMySQL并在项目的__init.py__中输入了以下内容
import pymysql
pymysql.install_as_MySQLdb()
2.问题:
在终端中执行python manage.py runserver后报错
django.core.exceptions.ImproperlyConfigured: mysqlclient 1.3.13 or newer is required; you have 0.9.3.
截图如下
3.解决方法
(1)点开最后一个链接,注释以下两行
# if version < (1, 3, 13):
# raise ImproperlyConfigured('mysqlclient 1.3.13 or newer is required; you have %s.' % Database.__version__)
(2)安装mysqlclient(可以用pip也可以在setting里安装,我这里用的是pip)
pip install --upgrade mysqlclient
因为没有权限,之后报错
按提示输入
pip install --upgrade --user mysqlclient
安装成功
(3)删掉__init__.py里的内容
(4)再在终端中执行
python manage.py runserver
运行成功
附带pycharm连接mysql的时区问题
在url后面添加?useSSL=false&serverTimezone=UTC
连接成功