3월 12, 2022

sp_clean_db_free_space(Transact-SQL)

  • 문서
  • 01/29/2021
  • 2 분 읽
    • m
    • c
    • r
    • p
    • M
    • +4
이 페이지에 도움이 되었습니까?

감사합니다.

에 적용: yes(지원되는 모든 버전)

데이터베이스 페이지에 남아 있는 잔여 정보를 제거합니다. 데이터베이스의 모든 파일에 있는 모든 페이지를 정리합니다.

주제 링크 아이콘트랜잭션 구문 규칙

구문

sp_clean_db_free_space 'database_name' 'delay_in_seconds' ] 

인수

@ 이 문제를 해결하려면 다음을 수행하십시오.

페이지 정리 사이의 지연 간격을 지정합니다. 이렇게 하면 입출력 시스템에 미치는 영향을 줄일 수 있습니다. 기본값은 0 입니다.

반환 코드 값

0(성공)또는 1(실패)

비고

테이블에서 작업 삭제 또는 행 이동을 유발하는 업데이트 작업은 행에 대한 참조를 제거하여 페이지의 공간을 즉시 확보할 수 있습니다. 그러나 특정 상황에서는 행이 실제로 데이터 페이지에 고스트 레코드로 남아있을 수 있습니다. 고스트 레코드는 백그라운드 프로세스에 의해 주기적으로 제거됩니다. 이 잔여 데이터는 쿼리에 대한 응답으로 데이터베이스 엔진에 의해 반환되지 않습니다. 그러나 데이터 또는 백업 파일의 물리적 보안이 위험한 환경에서는sp_clean_db_free_space를 사용하여 이러한 고스트 레코드를 정리할 수 있습니다. 데이터베이스 파일당 이 작업을 수행하려면 다음을 사용합니다.

파일 크기,사용 가능한 공간 및 디스크 용량에 따라 다릅니다. sp_clean_db_free_space를 실행하면 입출력 작업에 큰 영향을 줄 수 있으므로 이 절차를 일반적인 작업 시간 외에 실행하는 것이 좋습니다.

sp_clean_db_free_space를 실행하기 전에 전체 데이터베이스 백업을 만드는 것이 좋습니다.저장 프로시저는 단일 파일을 정리할 수 있습니다.

사용 권한

db_owner데이터베이스 역할의 멤버 자격이 필요합니다.

예제

다음 예제에서는AdventureWorks2012데이터베이스에서 모든 잔여 정보를 정리합니다.데이터베이스 엔진 저장 프로시저(데이터베이스 엔진 저장 프로시저)에 대한 자세한 내용은 데이터베이스 엔진 저장 프로시저(데이터베이스 엔진 저장 프로시저)를 참조하십시오.

답글 남기기

이메일 주소는 공개되지 않습니다.