본문 바로가기
데이터

[MySQL] 기본 설정 + django와 서버 연결하기

by Jyujae 2022. 8. 14.

1. 먼저 MySQL 설치가 필요하다

 

설치는 이 블로그를 참조하였다

https://ansan-survivor.tistory.com/1130

 

코딩 관련 UI를 다운로드할 때 익숙하다면 잘 알겠지만, 설치도 하나하나 잘 비교해가면서 해보자!

 

2. 먼저 설치를 성공했을 때의 SQL Workbench 화면이다

 

3. 이제 mySQL를 실행할 .cmd 창(sql 명령어로 프롬프트에서 실행하고 통제) 과 장고 화면을 띄어주세요

 

- workbench를 설치만 했다면, user가 없을 것이고, 유저 없이 장고를 실행하게 되면, (유저가 있는데도 오류가 뜨면 비밀번호를 확인해보자)

 

django.db.utils.OperationalError: (1045, "Access denied for user ''@'localhost' (using password: YES)") 혹은

database가 존재하지 않는다는 오류들을 만날 것이다.

 

- mySQL cmd에서의 설정

 

경로: C:\Program Files\MySQL\MySQL Server 8.0\bin

 

위의 설치 방법대로 했다면 폴더가 구분되어서 있을 것이고, 아니라면 server의 bin 폴더를 찾자

(program files 에서 my sql 를 뒤져보자 or 검색)

 

mysql  -u root -p 

 

로 접속하고

 

;가 없으면 이렇게 화살표가 뜨면서 명령어 실행이 안됩니다 (명령어는 ;를 꼭 기억해주세요!!)

create user '계정이름'@'%' identified by '비밀번호';

 

grant all privileges on *.* to '계정이름'@'%';

 

flush privileges;

 

비밀번호 -> workbench를 실행할 때 생성했겠지만, 없다면 

 

alter user '계정이름'@'%' identified with mysql_native_password by '비밀번호';

 

 

이제 우리가 장고에서 사용할 database를 만들어야해

 

mysql 서버에 들어가서 

 

create database 데이타베이스 이름;

 

으로 만들고, DB 이름을 장고 setting 에서의 'NAME'과 맞춰주면 서버를 구동할 수 있다!

 

- 장고에서의 설정

DATABASES = {
    'default': {
        # django db를 mysql로 사용하겠음
        'ENGINE': 'django.db.backends.mysql',
        # DB 이름 지어주기
        'NAME': 'DB이름',
        # 사용자 유저 계정 생성 후 입력하기
        'USER': '계정이름',
        # 사용자 비밀번호 생성 후 입력하기
        'PASSWORD': '비밀번호',
        # default host인 localhost
        'HOST': 'localhost',
        # MySQL default 포트 번호
        'PORT': '3306',
    }
}

 

를 바꾸어 넣어주시고

 

python manage.py makemigrations

 

python manage.py migrate

 

만약 Error loading MYSQLdb module 하면서 오류가 난다면

 

pip install pymysql 를 해주고,

 

sql 관련 모듈이 설치가 되었는지 확인해보자!

    }

}

 

 

 

 

 

 

'데이터' 카테고리의 다른 글

[금융데이터 분석을 위한 판다스 활용법][파이썬]  (0) 2022.03.02