ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • TIL.96 PostgreSQL 튜토리얼
    TIL/PostgreSQL 2021. 1. 12. 18:14
    728x90
    반응형

    기업협업 프로젝트 간 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
Designed by Tistory.