2010-01-08 3 views
8

이전 8.x 일 동안 나는 Linux에서 수많은 PGSQL 데이터베이스를 실행했으며 유지 관리 스크립트를 통해 데이터베이스를 명시 적으로 제거했습니다.PGSQL 데이터베이스 용으로 Windows Server 2003에서 자동 진공 (autovacuum)이 실행되고 있는지 어떻게 알 수 있습니까?

8.x가 나왔을 때 나는 제대로 작동하고 있었으므로 아무 것도 변경할 필요가 없다는 것을 바탕으로 자동 시스템으로 옮기지 않았습니다. 그래서 저는 오토 진공 전문가가 아닙니다.

이제 8.x 시대 이후에 필자는 Windows Server 2003 이상에서 실행되는 일부 PGSQL 데이터베이스를 직접 발견하게되었습니다.

autovacuum 같이 표시되어야합니다.은 지침을 따르고 .conf 파일에서 켜져 있기 때문에 실행 중이어야합니다.

그러나 PGAdmin을 데이터베이스에 연결하면 VACUUM을 실행해야한다는 메시지가 표시됩니다.

자동 진공 데몬이 실행 중이며 데이터베이스를 조사하고 올바르게 진공 청소기를 사용하는지 어떻게 알 수 있습니까?

+0

UNIX 관련 답변은 http://stackoverflow.com/q/19826467/41906을 참조하십시오. –

답변

8

pg_stat_user_tables에는 마지막 자동 진공 및 자동 분석이 테이블에서 실행될 때 열이 있습니다. 이는 좋은 출발점입니다. 물론 로그 파일에는 자동 진공관이 수행하는 작업에 대한 정보가 포함됩니다.

Process Explorer와 같은 도구를 사용하여 postgres.exe 프로세스를 구체적으로 볼 수 있습니다. 유닉스에서 사용할 수있는 ps 명령 줄 정보를 에뮬레이트하기 위해 특별히 명명 된 뮤텍스가 있습니다. 쉽게 찾을 수 있어야합니다. 그리고 "autovacuum"을 검색하여 실행 중인지 확인할 수 있습니다.

+0

아. 훌륭해, 유망 해 보인다. 나는 그 테이블과 로그 파일에서 주위를 돌며이 답을 적절하게 홍보 할 것이다. – liamf

관련 문제