Active Directory 데이터베이스의 오프라인 조각 모음 수행

이 문서에서는 Active Directory 데이터베이스의 오프라인 조각 모음을 수행하는 방법을 설명합니다.

적용 대상: Windows Server 2019, Windows Server 2016, Windows Server 2012 R2
원래 KB 번호: 232122

요약

Active Directory는 가비지 수집 프로세스의 일부로 특정 간격으로 데이터베이스의 온라인 조각 모음을 자동으로 수행합니다. 기본적으로 12시간마다 발생합니다. 온라인 조각 모음은 데이터베이스 파일(Ntds.dit)의 크기를 줄이는 것이 아니라 데이터베이스의 데이터 스토리지를 최적화하고 새 개체에 대한 디렉터리의 공간을 회수합니다.

오프라인 조각 모음을 수행하면 내부 조각화 없이 새 버전의 데이터베이스 파일이 만들어집니다. 또한 모든 인덱스를 다시 만듭니다. 원래 데이터베이스 파일의 조각화 방법에 따라 새 파일이 훨씬 작을 수 있습니다.

Active Directory 데이터베이스의 오프라인 조각 모음 수행

Active Directory 데이터베이스의 오프라인 조각 모음을 수행하려면 다음 단계를 수행합니다.

  1. Active Directory를 백업합니다. Windows Server Backup은 기본적으로 온라인 상태에서 Active Directory 백업을 지원합니다. 백업 마법사에서 컴퓨터의 모든 항목을 백업하는 옵션을 선택하거나 마법사에서 시스템 상태를 백업하도록 선택하여 독립적으로 이 문제가 자동으로 발생합니다.

  2. 다음 작업 중 하나를 수행합니다.

    • Active Directory Domain Services 또는 LDS instance 중지합니다.
    • msconfig를 시작하고 부팅 창으로 이동합니다. 구성하려는 OS 설치를 선택합니다. 부팅 옵션 섹션에서 안전한 부팅을 선택하고 Active Directory 복구 항목도 선택합니다. 확인을 클릭하면 도구에서 다시 시작하도록 요청합니다. 컴퓨터를 다시 시작합니다.
  3. 디렉터리 서비스 복원 모드 SAM에서 로컬 관리자 계정에 대해 정의된 암호를 사용하여 관리자 계정에 로그온합니다.

  4. 명령 프롬프트 창을 엽니다.

  5. NTDSUTIL은 TEMP 및 TMP 환경 변수를 사용하여 조각 모음 중에 임시 데이터베이스를 만듭니다. 사용된 표준 볼륨의 여유 공간이 압축된 데이터베이스의 크기보다 작으면 다음 오류가 발생합니다.

    파일 유지 관리: d:\compactDB로 압축
    DEFRAGMENTATION 모드 시작 중...
    원본 데이터베이스: D:\windows\NTDS\ntds.dit
    대상 데이터베이스: d:\compactDB\ntds.dit

    조각 모음 상태(완료율)

    0 10 20 30 40 50 60 70 80 90 100

    |----|----|----|----|----|----|----|----|----|----|

    .......................... -1808(JET_errDiskFull, 디스크에 남은 공간이 없음) 오류로 인해 작업이 종료되었습니다.

    이 경우 환경 변수 TMP 및 TEMP를 작업에 충분한 여유 공간이 있는 볼륨으로 설정합니다. 예를 들어 다음 설정을 사용합니다.

    Md d:\temp
    Set tmp=d:\temp
    Set temp=d:\temp
    

    참고

    이 문제는 데이터베이스의 무결성 검사 중에 발생할 수도 있습니다.

  6. NTDSUTIL을 실행합니다.

  7. instance 활성화를 입력하여 Active Directory 데이터베이스 instance 선택합니다. LDS 데이터베이스를 압축하려는 경우 LDS instance 이름을 사용합니다.

  8. 파일을 입력한 다음 Enter 키를 누릅니다.

  9. 정보를 입력한 다음 Enter 키를 누릅니다. 그러면 Active Directory 데이터베이스 및 해당 로그 파일의 경로 및 크기에 대한 현재 정보가 표시됩니다. 경로를 확인합니다.

  10. 압축된 데이터베이스를 저장할 충분한 드라이브 공간이 있는 위치를 설정합니다.

  11. compact to <drive>:\<directory>을(를) 입력한 다음 Enter 키를 누릅니다. 이 명령에서 자리 표시자 <드라이브> 및 <디렉터리가> 이전 단계에서 설정한 위치의 경로를 나타냅니다.

    참고

    디렉터리 경로를 지정해야 합니다. 경로에 공백이 있으면 전체 경로를 따옴표로 묶어야 합니다. 예를 들어 압축을 "c:\new 폴더"로 입력합니다.

  12. 지정한 경로에 Ntds.dit 또는 AdamNtds.dit 라는 새 데이터베이스가 만들어집니다.

  13. quit을 입력한 다음 Enter 키를 누릅니다. 명령 프롬프트로 돌아가려면 종료를 다시 입력합니다.

  14. 조각 모음이 오류 없이 성공하면 화면의 Ntdsutil.exe 지침을 따릅니다. 다음 명령을 del drive :\ pathToLogFiles \*.log입력하여 로그 디렉터리의 모든 로그 파일을 삭제합니다.

    5단계에서 기록한 현재 데이터베이스 경로의 이전 데이터베이스 파일 위에 새 Ntds.dit 또는 AdamNtds.dit 파일을 복사합니다.

    참고

    Edb.chk 파일을 삭제하지 않았습니다.

  15. Active Directory Domain Services 또는 LDS instance 중지한 경우 지금 다시 시작할 수 있습니다.

  16. Active Directory 복원 모드에서 작업하는 경우 msconfig를 시작하고 부팅 창으로 이동합니다. 구성하려는 운영 체제 설치를 선택합니다. 부팅 옵션 섹션에서 안전한 부팅을 지우려면 클릭합니다. 확인을 클릭하면 도구에서 다시 시작하도록 요청합니다. 컴퓨터를 다시 시작합니다.