이 문서는 지원되지 않는 PostgreSQL 버전에 대한 것입니다.
당신은 다음과 같은 페이지를 보고 싶을 수도 있습니다.PostgreSQL : 문서 : 17 : 18.5. 서버 토토 커뮤니티버전 또는 위에 나열된 다른 지원 버전 중 하나를 사용하세요.

17.5. 토토 캔 종료

데이터베이스 토토 캔를 종료하는 방법에는 여러 가지가 있습니다. 당신 다양한 신호를 전송하여 종료 유형을 제어합니다. 마스터포스트그레프로세스.

SIGTERM

이것은스마트 종료모드. 받은 후SIGTERM, 서버가 새 항목을 허용하지 않습니다. 연결하지만 기존 세션이 작업을 종료하도록 허용 일반적으로. 모든 세션이 끝난 후에만 종료됩니다. 종료합니다. 서버가 온라인 백업 모드인 경우 또한 온라인 백업 모드가 더 이상 작동하지 않을 때까지 기다립니다. 활동적입니다. 백업 모드가 활성화되어 있는 동안 새 연결은 여전히 허용되지만 슈퍼유저에게만 허용됩니다(이 예외는 수퍼유저가 연결하여 온라인 백업을 종료할 수 있도록 허용 모드). 스마트 종료 시 서버가 복구 중인 경우 요청되면 복구 및 스트리밍 복제가 수행됩니다. 모든 정규 세션이 끝난 후에만 중지됨 종료되었습니다.

SIGINT

이것은빠른 종료모드. 토토 캔는 새로운 연결을 허용하지 않고 기존의 모든 연결을 보냅니다. 토토 캔 프로세스SIGTERM, 이로 인해 현재 거래가 중단됩니다. 그리고 빨리 나가세요. 그런 다음 모든 서버 프로세스를 기다립니다. 종료하고 마침내 종료됩니다. 서버가 온라인 상태인 경우 백업 모드가 종료되면 백업 모드가 종료됩니다. 백업이 쓸모없어요.

SIGQUIT

이것은즉시 종료모드. 마스터포스트그레프로세스 보낼 것입니다SIGQUIT모두에게 하위 프로세스가 적절하게 처리되지 않고 즉시 종료됩니다. 스스로를 종료합니다. 자식 프로세스도 마찬가지로 종료됩니다. 받자마자 즉시SIGQUIT. 이것은 회복으로 이어질 것입니다 ( 다음 시작 시 WAL 로그 재생). 이것은 긴급 상황에만 권장됩니다.

pg_ctl프로그램은 편리한 서버를 종료하기 위해 이러한 신호를 보내는 인터페이스입니다. 또는 다음을 사용하여 직접 신호를 보낼 수 있습니다.죽이다Windows 이외의 시스템에서.PID포스트그레스프로세스는 다음을 사용하여 찾을 수 있습니다.ps프로그램 또는 파일에서postmaster.pid데이터 디렉토리에 있습니다. 에 대한 예를 들어 빠른 종료를 수행하려면:

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

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

다른 세션을 허용하면서 개별 세션을 종료하려면 계속하려면 세션을 사용하세요.pg_terminate_backend()(참조테이블 9-56) 또는 다음을 보내세요.SIGTERM세션과 관련된 하위 프로세스에 신호를 보냅니다.