지정 된 테이블 또는 뷰 의 인덱스 를 조각 모음 합니다 . 
 중요 : Microsoft SQL Server 의 이후 버전 에서 는 이 기능 이 제거 됩니다 . 새 개발 작업 에서 는 이 기능 을 사용 하 지 말 고 , 현재 이 기능 을 사용 하 는 응용 프로그램 은 수정 하 십시오 . 대신 ALTER INDEX 를 사용 하 십시오 . Transact - SQL 구문 표기 규칙 
 | database _ id | 0 인덱스 조각 모음 을 수행 할 데이터베이스 입니다 . 0 을 지정 하 면 현재 데이터베이스 가 사용 됩니다 . 데이터베이스 이름 은 식별자 에 대한 규칙 을 따라야 합니다 . 
 인덱스 조각 모음 을 수행 할 테이블 이나 뷰 입니다 . 테이블 및 뷰 이름 은 식별자 규칙 을 따라야 합니다 . 
 조각 모음 할 인덱스 의 ID 이름 입니다 . 이 인수 를 지정 하 지 않 으면 지정 한 테이블 이나 뷰 의 모든 인덱스 를 조각 모음 합니다 . 인덱스 이름 은 식별자 에 대한 규칙 을 따라야 합니다 . partition _ number | 0 조각 모음 할 인덱스 의 파티션 번호 입니다 . 지정 하 지 않 거나 0 을 지정 하 면 지정 한 인덱스 의 모든 파티션 을 조각 모음 합니다 . 
 WITH NO _ INFOMSGS 심 각도 가 0 에서 10 사이 인 모든 정보 메시지 를 표시 하 지 않 습니다 . 
 DBCC INDEXDEFRAG 는 인덱스 가 문 에 지정 되 고 WITH NO _ INFOMSGS 를 지정 하 지 않 은 경우 다음 과 같 은 결과 집합 을 반환 합니다 . 값 은 다를 수 있 습니다 . 
 DBCC INDEXDEFRAG 는 인덱스 검색 성능 을 향상 시키 기 위해 페이지 의 물리 적 순서 가 왼쪽 에서 오른쪽 으로 리프 노드 의 논리 적 순서 와 일치 하 도록 인덱스 리프 수준 의 조각 을 모읍니다 . 참고 : DBCC INDEXDEFRAG 가 실행 되 면 인덱스 조각 모음 이 직렬 로 수행 됩니다 . 이 는 하나 의 인덱스 에 대한 작업 이 하나 의 스레드 를 통해 수행 됨 을 의미 합니다 . 병렬 처리 는 수행 되 지 않 습니다 . 또한 동일 한 DBCC INDEXDEFRAG 문 에서 여러 개 의 인덱스 에 대해 작업 을 실행 하 면 한 번 에 한 인덱스 씩 차례 로 수행 됩니다 . DBCC INDEXDEFRAG 는 또한 인덱스 가 만들 어 졌 을 때 지정 된 채 우기 비율 을 고려 하 여 인덱스 의 페이지 를 압축 합니다 . 압축 으로 인해 생성 된 빈 페이지 는 제거 됩니다 . 자세 한 내용 은 채우 기 비율 을 참조 하 십시오 . 
 인덱스 가 하나 이상 의 파일 에 걸쳐 있 을 경우 DBCC INDEXDEFRAG 는 한 번 에 한 파일 씩 조각 을 모으 며 파일 간 에 페이지 는 마이 그레이 션 할 수 없 습니다 . 
 DBCC INDEXDEFRAG 는 5 분 마다 예상 완료 율 을 보 고 합니다 . DBCC INDEXDEFRAG 는 진행 도중 언제든지 종료 할 수 있 으며 완료 된 작업 은 모두 그대로 보존 됩니다 . 
 DBCC DBREINDEX 나 일반 적 인 인덱스 작성 작업 과 달리 DBCC INDEXDEFRAG 는 온라인 작업 이 므로 장시간 잠금 상태 를 유지 하 지 않 습니다 . 따라서 DBCC INDEXDEFRAG 는 쿼리 또는 업데이트 의 실행 을 차단 하 지 않 습니다 . 조각 모음 에 걸리 는 시간 은 조각 화 수준 과 관련 이 있 으므로 상대 적 으로 덜 조각난 인덱스 는 새 인덱스 를 만드 는 것 보다 빠르 게 조각 모음 을 실행 할 수 있 습니다 . 심하 게 조각난 인덱스 는 새로 만드 는 것 보다 조각 모음 을 실행 하 는 데 시간 이 훨씬 많이 걸릴 수 도 있 습니다 . 조각 모음 은 데이터베이스 복구 모델 설정 에 관계 없이 항상 전체 로 깅 됩니다 . 자세 한 내용 은 ALTER DATABASE ( Transact - SQL ) 를 참조 하 십시오 . 심하 게 조각난 인덱스 를 조각 모음 할 경우 인덱스 작성 을 전체 로 깅 하 는 것 보다 더 큰 로그 가 생성 될 수 있 습니다 . 그러나 조각 모음 은 일련 의 짧 은 트랜잭션 으로 수행 되 므로 로그 백업 을 자주 하 거나 복구 모델 설정 이 SIMPLE 인 경우 에 는 큰 로그 가 필요 하 지 않 습니다 . 
 DBCC INDEXDEFRAG 는 인덱스 리프 페이지 를 섞 어 놓 습니다 . 따라서 인덱스 가 디스크 의 다른 인덱스 와 인터 리브 된 경우 해당 인덱스 에 대해 DBCC INDEXDEFRAG 를 실행 해도 인덱스 의 모든 리프 페이지 가 연결 되 지 는 않 습니다 . 페이지 의 클러스터 링 을 향상 시키 려면 인덱스 를 다시 작성 하 십시오 . 
 DBCC INDEXDEFRAG 는 비 활성 화 된 인덱스 또는 페이지 잠금 이 OFF 로 설정 된 인덱스 를 조각 모음 하 는 데 사용 할 수 없 으며 시스템 테이블 에 대해 사용 할 수 없 습니다 . 
 다음 예 에서 는 AdventureWorks 데이터베이스 의 Production . Product 테이블 에 있 는 PK _ Product _ ProductID 인덱스 의 모든 파티션 을 조각 모음 합니다 . 
 참고 항목 참조 DBCC ( Transact - SQL ) sys . dm _ db _ index _ physical _ statsCREATE TABLE ( Transact - SQL ) ALTER TABLE ( Transact - SQL ) ALTER INDEX ( Transact - SQL ) 관련 자료 테이블 및 인덱스 아키텍처 
 인덱스 및 파티션 번호 절 을 선택 사항 으로 표시 하 여 구문 을 수정 했 습니다 .