-
TIL.96 PostgreSQL 튜토리얼TIL/PostgreSQL 2021. 1. 12. 18:14728x90반응형
기업협업 프로젝트 간 Nest JS 와 Typescript 그리고 PostgreSQL 을 사용하여 진행하게 되었다.
기존 MySQL이 아니지만 동일한 관계형 데이터베이스로 간단한 설치 방법 및 권한부여, DB 조회 등을 알아보자.
1. PostgreSQL 설치
brew install postgresql
2. PostgreSQL 서비스 시작
pg_ctl -D /usr/local/var/postgres start 또는 brew services start postgresql
3. 실행 확인
postgres -V
4. postgreSQL 접속
psql postgres
5. 자동으로 postgres 라는 유저가 기본으로 생성된다고 하지만 나는 아래와 같이 단 하나의 유저만 생성되었다.
postgres=# \du
현재 munseunghui 에는 굉장히 많은 권한이 부여된 상태이며
보통 모든 권한이 필요없이 특정 권한만을 부여해서 사용한다고 한다.
너무 많은 권한이 주어진 DB 계정을 사용하게 될 경우 많은 문제가 발생될 수 있다고 하니 계정을 새로 만들고 비밀번호와 권한을 설정해주도록 하자.
6. DB 계정 추가
postgres=# create user codermun;
7. DB계정 Rolo 권한 추가
- Superuser : DB내의 모든 엑세스 제한을 무시할 수 있는 권한
필요한 경우에만 부여해야하며 새로운 Superuser를 만들기위해선 자기 자신이 Superuser여야 함.
- Create role : 새로운 역할(Role) 생성 할 수 있는 권한
권한이 있는 계정의 경우 다른 role을 삭제하고 변경할수 있다.
- Create db : DB 생성할 수 있는 권한
- Relication : 마스터 서버에서 문제가 생겼을 경우 해당 권한으로 복제 스탠바이 서버를 구축할 수 있는 권한을 부여함
이는 실제로 매우 중요하고 높은 권한으로 추후 스탠바이 서버 구축을 위해 사용된다.
- Bypass RLS : 모든 RLS(Row_Level_Security) 정책을 우회할 수 있는 권한
여기서는 Create role, db만 추가하자
띄어쓰기 주의
postgres=# alter role codermun createdb createrole;
추후 다루게 될 명령어가 아주 많으니 까먹지 않도록 계속 블로그에 기록해주도록 하자
728x90반응형'TIL > PostgreSQL' 카테고리의 다른 글
TIL.97 PostgreSQL 기본 명령어 (0) 2021.01.13