docker desktop 설치를 해주고, 아래의 커맨드를 Terminal 에서 실행해서 3306 포트가 비어있는지 확인해봅니다.
docker desktop site:
https://hub.docker.com/editions/community/docker-ce-desktop-macnetstat -vanp tcp | grep 3306
위의 그림처럼 아무것도 안떠야 정상이고, 3306 포트가 열려있다면 mysql 이 실행되고 있을 확률이 매우 높습니다. 그렇기 때문에 3306 포트를 실행하고있는 포트를 닫아주어야 합니다.
Terminal 에 아래의 커맨드를 입력하면 docker dashboard 에 등록이 됩니다.
docker run --name camp -e MYSQL_ROOT_PASSWORD=<비밀번호> -e TZ='Asia/Seoul' -d -p 3306:3306 mysql:8.0.25
- 코드 설명
--name : 이름을 설정할 수 있는 부분입니다.
-e: environment 의 약자로 환경변수를 설정할 수 있습니다.
-d: detach 의 약자로 터미널을 닫아도 계속 실행이 되도록 만들어줍니다.
-p: port 의 약자로 port 를 설정할 때 사용합니다.위의 과정까지 끝냈다면 docker dashboard 를 열면 아래의 그림처럼 등록이 되어있게 됩니다.
pycharm 을 열고 아래의 그림처럼 Data Source -> MySQL 을 찾아 눌러줍니다.
User: root, password: 위에 Terminal 커맨드에 입력한 비밀번호를 입력해주고, 아래의 Test Connection 을 눌러 제대로 연결이 되었는지 확인해줍니다. 간혹 serverTimezone 이 Asia/Seoul 로 설정이 안되서 오류가 날수도 있는데, 그런경우 Asia/Seoul 을 입력해 줍니다.
pycharm Terminal 을 열고 아래의 커맨드를 입력해 poetry 에 pymysql 을 설치해줍니다.
poetry add pymysql==1.0.2 types-PyMySQL==1.0.6
pycharm camp -> settings.py 에 아래의 코드로 DATABASES 부분을 덮어 씌워줍니다.
import pymysql # Database # https://docs.djangoproject.com/en/4.0/ref/settings/#databases pymysql.install_as_MySQLdb() DATABASES = { "default": { "ENGINE": "django.db.backends.mysql", "NAME": "camp", "USER": "root", "PASSWORD": <설정한 비밀번호>, "HOST": "localhost", "PORT": "3306", } }
Data Base Console 창에서 CREATE DATABASE 데이터베이스 명; 을 입력후 실행시켜줍니다.