본문 바로가기
파이썬 웹 개발

[Django] _mysql' is not defined 호환에러 해결하기

by 배추잠자리 2022. 1. 25.
반응형

[파이썬 장고] _mysql' is not defined 호환에러 해결하기

[Django] _mysql' is not defined 호환에러 해결하기

[Python Django] _mysql' is not defined 호환에러 해결하기

_mysql ERROR

 

#ERROR

version_info, _mysql.version_info, _mysql.__file__
NameError: name '_mysql' is not defined

 

파이썬 장고 환경에서 개발하다보면 상기의 에러를 보는 경우가 있다.

분명 mysqlclient 패키지를 설치했음에도 불구하고 위의 에러를 뱉는데... 검색해도 잘 나오지 않는다....

그래서 해결방법을 정리해보려고 해요~!

 

  • 개발환경 운영체제 : MAC OS, M1
  • Django 버전 : 3.1.3
  • Python 버전 : 3.7.9
  • MySQL 버전 : 8

mysqlclient 라이브러리, 파이썬, 장고의 호환에 문제가 참 많은것 같습니다.

이러한 충돌 및 호환 문제를 해결해주는 방법이 있는데요.

PyMySQL을 통해서 이러한 에러를 잡을 수 있습니다.

 

 

■ PyMySQL 설치

pip install pymysql

 

 

 

■ 데이터베이스 설정 부분 settings.py 수정하기

 

설치한 pymysql import 하기

설치한 라이브러리 pymysql 을 import 해주세요.

 

pymysql.install_as_MySQLdb() 추가입력

이 후 위의 사진의 빨간네모처럼 작성해주시면 됩니다 !!!!

 

 

■ 하단의 소스처럼 수정을 해주시면 됩니다.

 

pymysql.install_as_MySQLdb()

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',
        'NAME': 'test',
        'USER': 'masteruser',
        'PASSWORD': 'aXhF(wW',
        'HOST': 'amazonaws.com',
        'PORT': '3306',
        'OPTIONS': {
            'init_command': 'SET sql_mode="STRICT_TRANS_TABLES"'
        }
    }
}

 

반응형

댓글