복구 모드에서 Eseutil /R 실행 방법

 

마지막으로 수정된 항목: 2006-06-09

복구란 트랜잭션 로그 파일을 데이터베이스에 재생하는 프로세스를 말합니다. 하드 복구와 소프트 복구의 두 가지 종류의 복구가 있습니다. 하드 복구는 복원 모드(/C)에서 Eseutil을 사용하여 수행할 수 있습니다. Eseutil 복구에 대한 자세한 내용은 Eseutil /R 복구 모드를 참조하십시오.

Eseutil /R을 실행하는 명령줄 구문

Eseutil /R 실행

  • Eseutil을 사용하여 소프트 복구를 실행하기 위한 기본 명령줄 구문은 다음과 같습니다.

    ESEUTIL /R Enn
    
  • 예를 들면 다음과 같습니다.

    ESEUTIL /R E00
    

    참고

    Enn은 데이터베이스에 재생하려는 트랜잭션 로그의 로그 파일 접두사를 지정합니다. 이 명령줄은 트랜잭션 로그 파일이 있는 폴더에서 실행할 때와 복구할 데이터베이스가 원래 경로 위치에 있는 경우에만 작동합니다. 로그 접두사 지정자는 Eseutil /R의 필수 매개 변수입니다.

보다 복잡한 복구 시나리오에 대한 명령줄 구문

트랜잭션 로그 파일이 현재 폴더에 없는 경우

일반적으로 항상 재생할 트랜잭션 로그 파일이 있는 폴더에서 Eseutil /R을 실행해야 합니다. 기본 소프트 복구 프로세스는 트랜잭션 로그 파일에서 데이터베이스 경로를 찾기 때문입니다. 로그 파일이 없는 폴더에서 복구를 실행하면 새 트랜잭션 로그 파일이 생성되며, 이 로그 파일은 데이터베이스가 있는 위치를 알지 못합니다. 트랜잭션 로그 폴더 외부에서 복구를 실행하려면 다음 스위치를 명령에 추가합니다.

/Lpath_to_logfiles

예를 들면 다음과 같습니다.

ESEUTIL /R E00 /Ld:\exchsrvr\logfiles

검사점 파일 제어

수동으로 소프트 복구를 실행하는 경우 대부분 검사점 파일을 삭제하거나 숨길 수 있습니다. 이는 일반적으로 사용 가능한 시퀀스 도중에 시작하기 보다는 사용할 수 있는 모든 트랜잭션 로그를 재생하기를 원하기 때문입니다.

유효한 검사점 파일이 있는 폴더에서 복구를 실행하는 경우 해당 폴더가 복구 작업에 영향을 주지 않도록 하려면 복구 중에 만들어질 검사점 파일의 경로를 다르게 정의해야 합니다. 이 작업은 오프라인 백업을 데이터베이스가 실행 중인 저장소 그룹에 복원한 이후에도 필요할 수 있습니다.

다른 폴더에서 복구를 실행하는 경우 검사점 파일을 사용하여 복구 작업을 제어하려면 해당 검사점 파일의 경로를 지정해야 합니다.

복구 중에 검사점 파일의 사용을 제어하려면 다음 스위치를 복구 명령에 추가합니다.

/Spath_to_or_away_from_current_checkpoint

예를 들면 다음과 같습니다.

ESEUTIL /R E00 /Sd:\

누락된 데이터베이스가 있는 저장소 그룹 복구

저장소 그룹이 예기치 않게 중지되고 일관성 없는 데이터베이스 중 하나가 제거되거나 사용할 수 없게 된 경우에는 누락된 데이터베이스를 복원하거나 /I 스위치를 사용하여 수동 복구를 실행해야만 저장소 그룹의 데이터베이스를 탑재할 수 있습니다.

중요

복구를 실행하는 동안 누락된 데이터베이스를 무시하려면 먼저 현재 로그 파일(Enn.log)을 포함하여 모든 트랜잭션 로그 파일의 백업 복사본을 만들어야 합니다. 다른 데이터베이스 복구로 인해 Enn.log가 변경되고 나면 누락된 데이터베이스를 다시 사용할 수 있는 경우가 발생하더라도 이 누락된 데이터베이스를 복구하는 데 Enn.log를 사용할 수 없습니다.

"위치가 잘못된" 데이터베이스 복구

이 복구 방법은 저장소 그룹을 실행하는 것과 복구 프로세스가 완전히 다릅니다. 또한 백업에 로그 파일을 재생하려는 경우에는 복구 저장소 그룹에서 오프라인 백업을 복구해야 하는 방법입니다.

이 작업을 준비하려면 단일 임시 폴더에 재생할 모든 트랜잭션 로그와 데이터베이스 파일(.edb 및 .stm)을 이동해야 합니다.

잘못된 위치에서 Eseutil 실행

  • 해당 폴더에서 다음 명령을 실행할 수 있습니다.

    ESEUTIL /R Enn /I /D
    
  • 예를 들면 다음과 같습니다.

    ESEUTIL /R E00 /I /D
    

로그에 연결된 다른 데이터베이스의 트랜잭션 로그에 완전한 종료 레코드가 있는지 여부에 따라 /I 스위치가 필요할 수도 있고 그렇지 않을 수도 있습니다. 이 경우 로그 파일에 "지연되는 연결"이 있더라도 복구를 다시 시작할 필요가 없도록 스위치를 사용하는 것이 좋습니다.

/D 스위치의 동작을 좀더 자세히 설명하면 다음과 같습니다. /D 스위치가 없는 경우에는 트랜잭션 로그 파일에 기록된 데이터베이스 경로를 사용하여 데이터베이스를 찾습니다. 이 동작은 Exchange 2000 및 이전 버전의 Eseutil에서만 사용할 수 있습니다. 경로 없이 /D 스위치를 사용하는 경우에는 현재 디렉터리가 데이터베이스 파일의 경로로 사용됩니다. /D 스위치 바로 뒤에 공백 없이 파일 경로가 있으면 데이터베이스 파일을 찾는 데 해당 경로가 사용됩니다. /D 스위치를 사용하여 Exchange 데이터베이스를 이동 시 발생하는 트랜잭션 로그 문제를 해결하는 방법에 대한 자세한 내용은 Exchange 사서함 데이터베이스 이동 시 트랜잭션 로그 파일 문제를 참조하십시오.

입력 오류의 가능성이 있으므로 Eseutil 스위치와 함께 경로를 사용할 필요 없이 모든 데이터 파일이 이미 있는 폴더에서 Eseutil을 실행하는 것이 좋습니다.

복구가 끝나고 데이터베이스 파일이 완전한 종료 상태가 되면 파일을 적절한 저장소 그룹으로 이동하고 데이터베이스를 탑재하여 해당 위치에 있는 로그 파일에 연결할 수 있습니다.

참고

일반적으로 데이터베이스를 탑재하기 전에 Exchange System Manager의 데이터베이스 개체 속성에서 "복원 시 데이터베이스 덮어쓰기 가능" 확인란을 선택해야 합니다.

명령줄 참조

다음은 Exchsrvr\Bin 폴더의 명령 프롬프트에서 eseutil ./?를 입력하고 복원을 위해 R을 선택할 경우 표시되는 명령줄 참조입니다.

RECOVERY:
    DESCRIPTION:  Performs recovery, bringing all databases to a
                  clean-shutdown state.
         SYNTAX:  ESEUTIL /r <3-character logfile base name> [options]
        OPTIONS:  zero or more of the following switches, separated by a space:
                  /l<path>          - location of log files
                                      (default: current directory)
                  /s<path>          - location of system files (eg. checkpoint file)
                                      (default: current directory)
                  /i                - ignore mismatched/missing database attachments
                  /t                - on successful recovery, truncate log files
                  /u[log]           - stop recovery when the Undo phase is reached with the option
                                      to stop when a certain log generation is recovered.
                                      [log] is the log generation number and if not specified
                                      the replay will go to the end of the existing logs.
                  /d[path]          - location of database files, or current directory
                                      if [path] not specified (default: directory
                                      originally logged in log files)
                  /n<path1[:path2]> - new location of database file and optional old location
                                      if the database file location changed.
                                      Can be specified for each database file.
                                      If a certain database is not in the list,it won't get recovered.
                                      To allow recovery in the original location
 for all other database, use /n*.
                                      (not valid with /d switch, not valid with
/b switch)
                  /8                - set 8k database page size (default: 4k)
                  /o                - suppress logo

자세한 내용

자세한 내용은 Exchange 서버 데이터베이스 유틸리티 가이드에서 다음 항목을 참조하십시오.