처음 django 프로젝트를 생성하면 기본DB는 sqlit3로 설정되어 있을 것이다. 이를 mysql로 바꾸어 주자.
일단 mysql은 계정이 있고 연동할 스키마도 있다고 가정하자.
일단 settings.py로 들어가서 다음 코드를 추가.
import my_settings
import pymysql
pymysql.install_as_MySQLdb()
여기서 my_settings는 SECRET_KEY와 같이 DB정보를 입력할 파이썬 파일이다.
그리고 다음 부분을 수정해 준다.
SECRET_KEY = my_settings.SECRET_KEY
DATABASES = my_settings.DATABASES
이제 my_settings.py 파일을 만들어준다. 이때 경로는 manage.py 경로와 동일하다.
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': '스키마명',
'USER': 'userID',
'PASSWORD': 'userPW',
'HOST': 'localhost',
'PORT': '3306',
}
}
SECRET_KEY = '시크릿 키'
요렇게 설정이 끝났으면 생성한 app에 있는 models.py에 mysql에 있는 테이블 정보를 추가해야 하는데 아래 명령어로 쉽게 가져올 수 있다. 아래 명령어 결과를 복사해 models.py에 넣어주자.
python manage.py inspectdb
끝났으면 아래 명령어로 적용시켜주자.
python manage.py makemigrations
python manage.py migrate
에러가 없었다면 mysql-workbench로 들어가서 기존 테이블외에 auth와 django로 시작하는 몇개의 테이블이 추가된 것이 보일 것이다.