Python/Django
[Django] django_mysql Warnings 해결 방법
S0PH1A
2019. 8. 16. 10:53
반응형
[Django] django_mysql Warnings 해결 방법
1. MySQL Strict Mode is not set for database connection 'default'
WARNINGS:
?: (django_mysql.W001) MySQL Strict Mode is not set for database connection 'default'
HINT: MySQL's Strict Mode fixes many data integrity problems in MySQL, such as data truncation upon insertion, by escalating warnings into errors. It is strongly recommended you activate it. See: https://django-mysql.readthedocs.io/en/latest/checks.html#django-mysql-w001-strict-mode
- settings.py 에서 init_command 옵션에 SET innodb_strict_mode=1를 추가하면 된다.
# settings.py DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', 'USER': 'root', 'PASSWORD': '1234', 'HOST': 'localhost', 'PORT': '3306', 'NAME': '', 'OPTIONS': { 'init_command': 'SET innodb_strict_mode=1', } } }
2. The character set is not utf8mb4 for database connection 'default'
WARNINGS:
?: (django_mysql.W003) The character set is not utf8mb4 for database connection 'default'
HINT: The default 'utf8' character set does not include support for all Unicode characters. It's strongly recommended you move to use 'utf8mb4'. See: https://django-mysql.readthedocs.io/en/latest/checks.html#django-mysql-w003-utf8mb4
- settings.py 에서 charset으로 character를 utf8mb4로 설정해 주면 된다.
# settings.py DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', 'USER': 'root', 'PASSWORD': '1234', 'HOST': 'localhost', 'PORT': '3306', 'NAME': '', 'OPTIONS': { 'charset': 'utf8mb4', } } }
[참고] https://django-mysql.readthedocs.io/en/latest/checks.html#django-mysql-w001-strict-mode
반응형