이 문서는 지원되지 않는 PostgreSQL 버전에 대한 것입니다.
다음에 대한 동일한 페이지를 보고 싶을 수도 있습니다.현재버전 또는 위에 나열된 다른 지원 버전 중 하나를 사용하세요.

16.5. 토토 캔 중 서버

데이터베이스 서버를 토토 캔하는 방법에는 여러 가지가 있습니다. 당신 다양한 신호를 전송하여 토토 캔 유형을 제어합니다.우체국장프로세스.

SIGTERM

수신 후SIGTERM, 서버는 새로운 연결을 허용하지 않지만 기존 연결은 허용합니다. 세션이 정상적으로 토토 캔됩니다. 그 후에야 토토 캔됩니다. 모든 세션이 정상적으로 토토 캔됩니다. 이것은스마트 토토 캔.

SIGINT

서버는 새로운 연결을 허용하지 않고 모든 연결을 보냅니다. 기존 서버 프로세스SIGTERM, 이로 인해 중단됩니다. 현재 거래를 종료하고 즉시 토토 캔합니다. 그런 다음 기다립니다. 서버 프로세스가 종료되고 최종적으로 종료됩니다. 이것은빠른 토토 캔.

서명 토토 캔

이것은즉시 토토 캔, 이는 다음과 같은 원인이 됩니다.우체국장보내기 프로세스SIGQUIT모든 하위 프로세스에 적용하고 즉시 토토 캔합니다. 제대로 종료됩니다. 자식도 마찬가지로 처리합니다. 수신 즉시 토토 캔서명 토토 캔. 이것은 회복으로 이어질 것입니다 ( 다음 시작 시 WAL 로그 재생). 이것은 긴급 상황에만 권장됩니다.

pg_ctl프로그램은 편리한 서버를 토토 캔하기 위해 이러한 신호를 보내는 인터페이스입니다.

또는 다음을 사용하여 직접 신호를 보낼 수 있습니다.죽이다.PID우체국장프로세스는 다음을 사용하여 찾을 수 있습니다.ps프로그램 또는 파일에서postmaster.pid데이터 디렉토리에 있습니다. 에 대한 예를 들어 빠른 토토 캔를 수행하려면:

$ kill -INT `head -1 /usr/local/pgsql/data/postmaster.pid`

중요:사용하지 않는 것이 가장 좋습니다SIGKILL서버를 종료합니다. 그렇게 하면서 서버가 공유 메모리를 해제하는 것을 방지하고 세마포어는 이전에 수동으로 수행해야 할 수도 있습니다. 새 서버를 시작할 수 있습니다. 뿐만 아니라,SIGKILL죽인다우체국장중계하지 않고 처리합니다. 하위 프로세스에 신호를 보내므로 다음이 필요합니다. 개별 하위 프로세스도 직접 종료합니다.