django에 PostgreSQL 연동 - (3)

0v0baek·2023년 6월 9일
0

TIP

목록 보기
9/15

도움 받은 글

[Django] 윈도우에서 Django + PostgreSQL 연결
13강) Django와 PostgreSQL 연동

Django 공식문서

들어가며

✅ PostgreSQL 설치
✅ 크롤링 한 데이터 백업하기 (dump data)
👉 PostgreSQL로 만든 DB를 프로젝트와 연결
👉 크롤링 한 데이터 적용시키기 (load data)

Windows 환경 기준으로 작성했다.

4. django 프로젝트에 연결 (feat. pgAdmin 4)

앞으로 우리는 pgAdmin이라는 툴로 postgreSQL을 프로젝트에 연결해줄 것이다.

pgAdmin 외에도 여러 툴이 있으나
나는 postgreSQL 설치시 같이 설치 된 pgAdmin을 사용해보려고 한다.

🔎 pgAdmin 접속


작업 표시줄에 검색해서 pgAdmin을 실행시켜주자.


실행시키면 이런 화면이 뜬다.
Servers를 눌러주자.


비밀번호 입력창이 뜬다.
설치 시에 입력했던 superuser의 비밀번호를 입력해주면 된다.


잘 접속이 되면 이렇게 뜬다.

🔎 유저 생성


Login/Group Roles 오른쪽 클릭 > Create > Login/Group Role...

General 탭에서 Name 입력
Comments는 생략해줘도 된다. 필수 필드가 아님.


Definition 탭에서 Password 입력 후 저장
(사진에는 안보이지만 오른쪽 아래에 저장 버튼이 있다.)

🔎 DB 생성


Databases 오른쪽 클릭 > Create > Database...


Database에는 DB 이름을 입력해주자.
Owner는 아까 만든 유저를 선택해주자.

Comment는 생략해도 된다.

작성 후 마찬가지로 저장.

DB 생성 완료.

🔎 settings.py 에서 DATABASES 변경

DATABASES = {
    "default": {
        "ENGINE": "django.db.backends.sqlite3",
        "NAME": BASE_DIR / "db.sqlite3",
    }
}

프로젝트 생성 후 건들지 않았다면 보통 위와같이 되어있을 것이다.

이제 여기를 조금 손봐서 postgreSQL을 연결해보자.

DATABASES = {
    "default": {
        "ENGINE": "django.db.backends.postgresql",
        "NAME": "DB 이름",
        "USER": "DB Owner 이름",
        "PASSWORD": "DB 비밀번호",
        "HOST": "127.0.0.1",
        "PORT": "5432",
    }
}

나는 보안을 위해서 비밀번호는 dotenv 파일 안에 넣은 뒤 불러왔다.

poetry run py manage.py migrate

마지막으로 migrate를 하면 끝.

🔎 pgAdmin에서 적용 확인


프로젝트 DB를 오른쪽 클릭해서 Refresh 해주자.


테이블은 Schemas하위의 Tables에서 확인할 수 있는데,
이렇게 잘 들어와있으면 연동이 성공된 것이다!

5. data.json 불러오기

이전 게시글에서 dump 해줬던 데이터를 postgreSQL에 적용시켜 줄 때가 됐다.

poetry run python manage.py loaddata data.json

터미널에 위의 명령어를 쳐주자.


별다른 오류 메세지 없이 Installed 된 모양이다.

pgAdmin에서 한번 더 확인해보자.
확인하기 전에 항상 DB refresh 해주기.


확인해줄 Table 오른쪽 클릭 > View/Edit Data > First 100 Rows

데이터 양이 많아서 일단 앞부분 100개만 먼저 확인해보자.

너무 말끔하게 잘 들어왔다!!

load도 성공.

profile
개발 공부 하는 비전공자 새내기. 꾸준히 합시다!

0개의 댓글