postgres - Initiate, Startup, Shutdown, Reload & Restart#
pg_ctl을 이용한 Initiate, Startup, Shutdown, Reload & Restart#
pg_ctl 옵션
- pg_ctl init [db] [-s] [-D datadir] [-o initdb-options]
- pg_ctl start [-w] [-t seconds] [-s] [-D datadir] [-l filename] [-o options] [-p path] [-c]
- pg_ctl stop [-W] [-t seconds] [-s] [-D datadir] [-m s [mart] | f [ast] | i [mmediate]
- pg_ctl restart [-w] [-t seconds] [-s] [-D datadir] [-c] [-m s [mart] | f [ast] | i [mmediate]] [-o options]
- pg_ctl reload [-s] [-D datadir]
- pg_ctl status [-D datadir]
- pg_ctl promote [-s] [-D datadir]
- pg_ctl kill signal_name process_id
- pg_ctl register [-N servicename] [-U username] [-P password] [-D datadir] [-S a [uto] | d [emand]] [-w] [-t seconds] [-s] [- o options]
- pg_ctl unregister [-N servicename]
[root@**** ~]# pg_ctl -D /home/postgres/pgsql/data -l logfile start [root@**** ~]# pg_ctl -l logfile -m fast stop [root@**** ~]# pg_ctl -D /home/postgres/pgsql/data -l logfile restart [root@**** ~]# pg_ctl -w restart [root@**** ~]# pg_ctl -D /home/postgres/pgsql/data -l logfile reload [root@**** ~]# pg_ctl status - -m (smart | fast | immediate)
- shutdown mode 지정.
- smart : default, 새로운 접속 거부, client의 모든 접속 끊길 때 까지 대기, 온라인 백업시 종료할 때까지 대기, 스트리밍 복제는 종료
- fast : 모든 사용자 트랜잭션 rollback, 바로 끊김, 온라인 백업 종료
- immediate : fast와 유사. 'clean shutdown'이 아님(checkpoint를 처리하지 않음), 재시작시 복구 작업 수행
- -D datadir
- 데이터베이스 파일의 파일 시스템 위치를 지정
- 생략할 경우 $PGDATA 환경 변수가 적용됨
- -l filename
- 서버 로그 출력을 filename에 추가
- 파일이 존재하지 않으면 생성
- -w
- 시작 혹은 정지 처리가 완료될 때까지 기다림
- 중지를 대기하고 있는 경우 pg_ctl은 서버가 pid 파일 삭제할 때까지 대기
- pg_ctl은 기동/정지가 성공했는지 여부에 따라 올바른 종료 코드 반환
- -W
- 부팅 과정 혹은 정지 처리가 완료될 때가지 기다리지 않음
- start 및 restart 모드의 기본
- reload
- restart의 경우 stop/start로 인해 접속이 안되거나 끊길 수 있음
- 설정파일(postgresql.conf, pg_hba.conf 등)만 재적용하는 것이 reload.
- postmast에 행업(hang up) 시그널을 보내는 것과 동일
postgres$ kill -SIGUP 'cat /home/postgres/pgsql/data/postmaster.pid | head -1' - psql에서 쿼리로 설정 파일 다시 읽어오는 방법도 있음
postgres=# select pg_realod_conf(); - 모든 설정 내용이 행업 시그널로 처리되는 것은 아니고 아래 쿼리의 대상만 가능
postgres=# select name, setting, unit, context, extra_desc from pg_settings where context='sighup';
- promote
- 지정한 데이터디렉토리에서 실행중인 대기 서버에 복구를 완료 읽기 및 쓰기 작업을 시작하도록 명령
- kill, register, unregister
- Microsoft Windows 모드에서 사용 가능
Last update: 2020년 5월 11일 10:34:16