Django에서 MySQL Connector 사용법에 대해 포스팅하겠습니다.
mysql 설치와 mysql-connector-python가 완료된 상태라고 가정하겠습니다.
mysql을 실행한 뒤,
다음 2가지를 생성합니다.
먼저 mysql에서 Database를 생성해줍니다.
CREATE BATABASE <dbname>;
위 방법은 그냥 생성하는 것이고
CREATE DATABASE <dbname> CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci
위 방법은 character setting을 utf8mb4로 설정하는 것입니다.
한글을 저장하기 위해서는 utf8mb4를 사용해야 합니다.
그리고 User를 생성합니다.
CREATE USER <username>@localhost IDENTIFIED BY <password>;
그리고 아까 생성한 Database에 대한 권한을 User에게 부여합니다.
GRANT ALL PRIVILEGES ON <dbname>.* TO <username>@localhost IDENTIFIED BY <'password'>;
권한을 부여하지 않으면 Django에서 Model을 선언한 뒤, migrate할 때 오류가 나니 꼭 권한을 부여해야 합니다.
이제 사용할 Database 준비가 완료되었습니다. Django랑 연결시켜보겠습니다.
project의 settings.py에서 DATABASES 설정을 다음과 같이 변경합니다.
DATABASES = {
'default' : {
'ENGINE': 'mysql.connector.django',
'NAME': 'practice', #사용하는 mysql의 데이터베이스
'USER': 'practice', #mysql의 유저
'PASSWORD': 'practice1234', #유저의 비밀번호
'HOST': 'localhost',
'PORT': '3306',
}
}
위와 같이 mysql과 연결시켜주면 이제 Django에서 mysql에서 생성한 practice라는 Database를 사용할 수 있습니다.