Django 와 MySQL 연결하기(1) -> MySQL DB 생성하기

JungSungHo·2023년 5월 12일
0

Django

목록 보기
1/2

Django로 개발을 하다보면, 초기에 sqllite로 연동돼어 있는데요 이 DB를 SQLlite 대신 MySQL 을 연동해보도록 하겠습니다.

1. 커넥터 설치

python 에서 mysql 서버와 통신을 하기 위해 파이썬용 데이터베이스 커넥터(Databse Connector)를 해당 명령어를 통해 설치합니다. mysqlclient 를 설치하는 것을 권장하고 있는 것 같습니다.

pip install mysqlclient

2. settings.py 수정

초기의 프로젝트 폴더 상의 settings.py 를 보게되면, 아래와 같이 설정된 것을 볼 수 있습니다.

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',
        'NAME': '',#db명
        'USER': '', #db user 이름
        'PASSWORD': '', #db password
        'HOST': 'localhost', #나중에 aws로 연결
        'PORT': '3306', #mysql 포트번호
    }
}
  • 'ENGINE': 사용할 엔진
  • 'NAME': 연동할 데이터베이스의 DB명
  • 'USER': 데이터베이스 접속 계정
  • 'PASSWORD': 데이터베이스 계정 비밀번호
  • 'HOST': 실제 DB 주소
  • 'PORT': 포트번호

3. MySQL DB 생성

위 settings.py에 DB 정보를 입력하려면 mysql 에서 DB를 생성해주어야 한다. 생성하기 전 존재하는 DB는 그림과 같았다.

C:\Users\kjeng>mysql -u root -p     # mysql에 root 계정으로 로그인
Enter password: ****************    # password 입력

.
.
.

mysql> show databases;				# 존재하는 DB 조회
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| myuser             |
| performance_schema |
| sakila             |
| sys                |
| world              |
+--------------------+
7 rows in set (0.00 sec)

(1) workbench 실행

(2) Query 메뉴 아래에 원통형 아이콘을 눌러서 새로운 스키마를 생성해줄 겁니다. 하고 싶은 Name 을 입력하고 Charset/Collation 은 utf8/utf8_bin 선택

(3) Apply SQL SCript to Databse 창이 나오면 Apply 선택 -> Finish 선택

(4) 오른쪽 톱니바퀴 옆 파란색으로 되어있는 부분을 클릭하여 다 활성화해주고 왼쪽에 Schemas 선택해서 Navigator 확인

(5) 생성된 DB 확인

4 사용자 계정 생성

(1) 왼쪽 아래 add account 후 정보 입력후 apply
-> Limit to Hosts Matching 의 default 값은 % 인데 이는 어느 컴퓨터에서나 접속 가능하게 한다는 뜻이다. 나는 해당 컴퓨터(ip)에서만 접속 가능하게 할 것이므로 localhost를 입력했다.

(2) Schema privileges 에서 add entry 클릭

(3) 해당 계정에 권한 부여

(4) 해당 스키마를 클릭한 후 아래쪽에 박스를 통해 해당 계정에 부여할 권한을 조정한다.
-> 데이터베이스 사용자가 쿼리를 자칫 잘못 입력하여 DB를 날려먹을 수도 있기 때문에 보통은 Object right 권한만 주고 Delete 권한으 안주는 경우도 있다.

5. 새로운 커넥션 생성

(1) workbench에 home 으로 나와서 (+) 버튼을 통해 커넥션을 하나 더 추가해준다.

(2) connection 이름을 지정해주고, Username, password 에는 아까 만든 계정을 넣어준다 default Schema에는 생성한 DB를 넣어준다

(3) Test Connection을 통해 연동이 잘 되는지를 확인한 후 OK버튼으로 마무리

6. 확인

CLI 상에서도 연동이 잘 됐는지를 확인해본다 새로 생성한 계정으로 로그인해 보았다.

Root 계정으로 로그인했을 때도 dropbox_django DB 가 잘 생성된 것 을 확인할 수 있다.

0개의 댓글