본문 바로가기

web/Django

django mysql 로 디비 설정

django에서 디폴트 DB는 sqlite3로 잡혀 있습니다. 원하는 디비로 변경하실려면 setting 부분과 해당 DB부분의 약간의 셋팅이 필요합니다. 


1. 해당 프로젝트의 setting.py 부분에 디비를 명시해 줍니다. 디비정보를 넣어주고 HOST 와 PORT 는 아무것도 않넣을경우 디폴트로 'localhost'와 '3336' 으로 설정됩니다. 

 

setting.py 

DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', 'NAME': 'DB_NAME', 'USER': 'DB_USER', 'PASSWORD': 'DB_PASSWORD', 'HOST': 'localhost', 'PORT': '3306', } }



2. 당연히 디비를 생성하기 위해서 ./manage.py syncdb 를 날려봅니다. 하지만! MySQLdb 모듈이 없다고 에러가 납니다. ?!



3. 모듈을 설치해 줍니다.(for ubuntu) 

$sudo apt-get isntall python-mysqldb



4. 이제 다시 ./manage.psyncdb 를 날려봅니다. 이번엔 데이터베이스가 없다고 나옵니다. (저의 경우 데이터베이스 명을  tutorial 로 설정했었습니다.)


5. mysql 로 접속해서 데이터베이스만 만들어줍니다. 

$create database tutorial;


6. 이제 다시!(3번째네요?) ./manage.psyncdb 를 날려주면~


7. 정상적으로! 테이블이 만들어지고 django 서버 또한 작동을 합니다.