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

토토 캔

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

시놉시스

토토 캔 [(옵션[, ...])] [table_and_columns[, ...]]
토토 캔 [full] [freeze] [Verbose] [분석] [table_and_columns[, ...]]여기서옵션|전체
    꼭 매달리게 하다
    말 수가 많은
    분석
    disable_page_skippingandtable_and_columnsis :

    table_name[(column_name[, ...])

설명

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

atable_and_columnsList,토토 캔현재 사용자가 토토 캔 청소기를 허가 한 현재 데이터베이스에서 모든 테이블과 구체화 된보기를 처리합니다. 목록과 함께토토 캔해당 테이블 만 처리합니다.

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

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

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

매개 변수

Full

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

Freeze

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

Verbose

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

분석

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

disable_page_skipping

정상,토토 캔가시성 맵. 모든 튜플이 동결 된 것으로 알려진 페이지는 항상 건너 뛸 수 있으며 모든 튜플이 모든 트랜잭션에 보이는 것으로 알려진 페이지는 공격적인 토토 캔을 수행 할 때를 제외하고 건너 뛸 수 있습니다. 또한 공격적인 토토 캔 청소기를 수행 할 때를 제외하고는 다른 세션이 사용을 완료하기를 기다리지 않기 위해 일부 페이지를 건너 뛸 수 있습니다. 이 옵션은 모든 페이지를 자르는 동작을 비활성화하며 가시성 맵의 내용이 의심되는 경우에만 사용되도록 의도되며, 이는 데이터베이스 손상을 일으키는 하드웨어 또는 소프트웨어 문제가있는 경우에만 발생해야합니다..

table_name

특정 테이블의 이름 (선택적으로 스키마 자격) 또는 토토 캔 상태에서 구체화 된보기. 지정된 테이블이 분할 된 테이블 인 경우 모든 잎 파티션이 토토 캔 청소기입니다.

column_name

분석 할 특정 열의 이름. 모든 열에 대한 기본값. 열 목록이 지정된 경우분석지정해야합니다.

출력

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

노트

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

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

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

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

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

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

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

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

토토 캔 (Verbose, Analyze) Onek;

호환성

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