PostgreSQL | 터미널 명령어 모음

DB 초기화

initdb --encoding=UTF-8 --no-locale --username={user name} --pgdata={database directory}

DB 생성

createdb --encoding=UTF-8 --username=root --owner=root --port=5432 {database name}

DB 시작

pg_ctl start --pgdata={database directory} --log={log file}

pg_ctl이 루트로 실행되지 않도록 한다. 구성 파일을 사용하기 때문에 postgres가 소유하고 루트 권한으로 “pg_ctl start"를 수행하면 특권이 부여 될 수 있다.
iDEFENSE가 지적한 에스컬레이션 공격. 물론 포스트 마스터는 실패하지만 익숙하지 않은 시스템 관리자를 보호하기 위해 좀 더 빨리 실패해야 한다.
Postgres와 함께. 선택한 수정은 모든 경우에 pg_ctl의 루트 사용을 사용하지 않도록 설정하는 것이다.

DB 종료

pg_ctl stop --pgdata={database directory} -m fast

DB 접속

psql --host=127.0.0.1 --port=5432 --username={user name} --dbname={database name} --password

테이블 목록 확인

\dt

나가기

\q
최종 수정 : 2020-11-12