이 문서는 지원되지 않는 버전의 PostgreSQL 용입니다.
당신은에 대해 같은 페이지를 볼 수 있습니다PostgreSQL : 문서 : 17 : 사설 토토 사이트버전 또는 위에 나열된 다른 지원 버전 중 하나입니다.

토토 캔

이름

토토 캔-쓰레기 수집 및 선택적으로 데이터베이스 분석

시놉시스

토토 캔 [(full | freeze | verbose | analyze [, ...]) [table_name[(column_name[, ...])]]]
토토 캔 [full] [동결] [Verbose] [table_name]
토토 캔 [full] [freeze] [Verbose] 분석 [table_name[(column_name[, ...])]

설명

토토 캔죽은 튜플이 차지하는 저장을 되 찾습니다. 정상PostgreSQL작동, 업데이트로 삭제되거나 쓸모없는 튜플은 테이블에서 물리적으로 제거되지 않습니다. 그들은 a까지 남아 있습니다.토토 캔완료되었습니다. 그러므로해야 할 필요가 있습니다토토 캔정기적으로, 특히 자주 업데이트 된 테이블에서.

매개 변수가없는토토 캔현재 사용자에게 토토 캔 허가가있는 현재 데이터베이스의 모든 테이블을 처리합니다. 매개 변수로토토 캔해당 테이블 만 처리합니다.

토토 캔 분석a 수행토토 캔그리고 an분석선택한 각 테이블에 대해. 이것은 일상적인 유지 보수 스크립트를위한 편리한 조합 형식입니다. 보다PostgreSQL : 문서 : 9.5 : 스포츠 토토 결과처리에 대한 자세한 내용은

일반토토 캔(full) 단순히 공간을 되 찾아 재사용 할 수 있도록합니다. 이 형태의 명령은 독점적 인 잠금을 얻지 못하므로 테이블의 정상적인 읽기 및 쓰기와 병렬로 작동 할 수 있습니다. 그러나 추가 공간은 운영 체제 (대부분의 경우)로 반환되지 않습니다. 같은 테이블 내에서 재사용 할 수 있습니다.토토 캔 Full테이블의 전체 내용을 추가 공간이없는 새 디스크 파일로 다시 작성하여 사용하지 않은 공간을 운영 체제로 반환 할 수 있습니다. 이 양식은 훨씬 느리고 처리되는 동안 각 테이블의 독점 잠금이 필요합니다.

옵션 목록이 괄호로 둘러싸여 있으면 옵션은 어떤 순서로든 작성할 수 있습니다. 괄호가 없으면 옵션은 위에 표시된 순서로 지정되어야합니다. 괄호 안장 구문이 추가되었습니다PostgreSQL9.0; 비교되지 않은 구문은 더 이상 사용되지 않습니다.

매개 변수

Full

selects"Full"더 많은 공간을 되 찾을 수 있지만 훨씬 더 길고 독점적으로 테이블을 잠그는 토토 캔. 이 방법에는 추가 디스크 공간이 필요합니다. 테이블의 새 사본을 작성하고 작업이 완료 될 때까지 이전 사본을 해제하지 않기 때문입니다. 일반적으로 이것은 테이블 내에서 상당한 양의 공간을 되 찾아야 할 때만 사용해야합니다.

동결

공격적 선택"냉동"튜플. 지정Freeze수행과 동일합니다토토 캔withVACUUM_FREEZE_MIN_AGEandVACUUM_FREEZE_TABLE_AGE매개 변수는 0으로 설정되었습니다. 테이블을 다시 작성할 때 공격적인 동결은 항상 수행 되므로이 옵션은이 중복됩니다.Full지정되어 있습니다.

Verbose

각 테이블에 대한 자세한 토토 캔 활동 보고서를 인쇄합니다.

분석

쿼리를 실행하는 가장 효율적인 방법을 결정하기 위해 플래너가 사용한 통계를 업데이트합니다.

table_name

토토 캔 청소기의 특정 테이블의 이름 (선택적으로 스키마 자격). 현재 데이터베이스의 모든 테이블에 대한 기본값.

column_name

분석 할 특정 열의 이름. 모든 열에 대한 기본값. 열 목록이 지정된 경우분석묵시적입니다.

출력

언제Verbose지정되어 있습니다.토토 캔현재 처리중인 테이블을 나타 내기 위해 진행 메시지를 제출합니다. 테이블에 대한 다양한 통계도 인쇄됩니다.

노트

테이블을 토토 캔 청소기로 청소하려면 일반적으로 테이블의 소유자 또는 슈퍼업자 여야합니다. 그러나 데이터베이스 소유자는 공유 카탈로그를 제외한 데이터베이스의 모든 테이블을 토토 캔 청소기로 청소할 수 있습니다. (공유 카탈로그에 대한 제한은 진정한 데이터베이스 전체임을 의미합니다.토토 캔슈퍼업자 만 수행 할 수 있습니다.)토토 캔호출 사용자가 토토 캔 청소기에 대한 허가가없는 테이블을 건너 뜁니다.

토토 캔트랜잭션 블록 내부에서 실행할 수 없습니다.

테이블이있는gin인덱스,토토 캔(어떤 형태로든) 또한 보류중인 인덱스 항목을 메인의 적절한 장소로 이동시켜 보류중인 인덱스 삽입을 완료합니다.gin색인 구조. 보다섹션 61.4.1자세한 내용.

우리는 죽은 줄을 제거하기 위해 활성 생산 데이터베이스를 자주 (적어도 밤마다) 토토 캔 청소기로 청소하는 것이 좋습니다. 많은 수의 행을 추가하거나 삭제 한 후에는 A를 발행하는 것이 좋습니다.토토 캔 분석영향을받는 테이블에 대한 명령. 이것은 최근의 모든 변경 결과로 시스템 카탈로그를 업데이트하고를 허용합니다.PostgreSQL계획 쿼리에서 더 나은 선택을 할 수있는 쿼리 플래너.

thefull일상적인 사용에는 옵션이 권장되지 않지만 특별한 경우에는 유용 ​​할 수 있습니다. 예를 들어 테이블에서 대부분의 행을 삭제하거나 업데이트 한 경우 테이블이 디스크 공간을 덜 차지하기 위해 물리적으로 축소되고 더 빠른 테이블 스캔을 허용하기를 원합니다..토토 캔 Full보통 평원 이상의 테이블을 줄입니다토토 캔Will.

토토 캔I/O 트래픽이 상당히 증가하여 다른 활성 세션의 성능이 저하 될 수 있습니다. 따라서 비용 기반 토토 캔 지연 기능을 사용하는 것이 좋습니다. 보다섹션 18.4.4자세한 내용.

PostgreSQL포함"Autovacuum"일상적인 토토 캔 유지 보수를 자동화 할 수있는 시설. 자동 및 수동 토토 캔 청소기에 대한 자세한 내용은 참조하십시오.PostgreSQL : 문서 : 9.5 : 일상 배트맨 토토 청소기.

단일 테이블을 청소하려면ONEK, 최적화에 대해 분석하고 자세한 토토 캔 활동 보고서를 인쇄하십시오 :

토토 캔 (Verbose, Analyze) Onek;

호환성

없음토토 캔SQL 표준의 명령문.