티스토리 뷰

반응형

어쩌다보니 Django를 써야할 일이 생겨서 프로젝트를 생성하고 python manage.py migrate를 실행했는데

NameError: name '_mysql' is not defined

에러가 발생해서 찾다보니 

pymysql을 설치해서 쓰면 된다고해서 설치해봤더니 잘되었다.

 

해결방법은 다음과 같다.

 

1. pip install pymysql

 

2. settings.py에 import pymysql

 

3. 다음 코드 추가

pymysql.install_as_MySQLdb()

 

4. python manage.py migrate 실행

 

5. django.core.exceptions.ImproperlyConfigured: mysqlclient 1.4.3 or newer is required; you have 1.0.2. 에러 발생..ㅎ

 

이걸 또 해결하기 위해 찾아보았더니 3번 코드 위에 이렇게 추가하니까 migrate가 해결되었다.

pymysql.version_info = (1, 4, 3, "final", 0)

 

 

pymysql.version_info = (1, 4, 3, "final", 0)
pymysql.install_as_MySQLdb()

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',
        'NAME': 'test',
        'USER': 'root',
        'PASSWORD': '1234',
        'HOST': 'localhost',
        'PORT': '3306',
    }
}
반응형