티스토리 뷰

반응형

MSSQL DB를 사용하다가 보면 서버 이전이나 데이터 복구 등 DB를 복원해야하는 경우가 간혹 생깁니다. 예상 작업시간을 미리 알아보기 위해 다른 서버에서 복원 테스트를 해봤다고 하더라도 실제 작업시에 진행률을 체크하는 건 변수 통제를 위해 중요합니다. 이런 때 사용할 수 있는 MSSQL DB 복원 진행 확인 쿼리에 대해 알아보겠습니다.

SELECT session_id,
       percent_complete,
       total_elapsed_time,
       estimated_completion_time
FROM sys.dm_exec_requests
WHERE command = 'RESTORE DATABASE'
AND percent_complete > 0;

위 쿼리를 사용하면 DB 복원 작업의 진행 상황을 확인할 수 있습니다. MSSQL에서는 sys.dm_exec_requests라는 동적 관리 뷰를 지원하고 있는데 이 뷰를 활용하여 복원 작업의 진척률을 알아볼 수 있습니다.

 

위 쿼리는 RESTORE DATABASE 명령어로 실행 중인 작업 중에 percent_complete 값이 0보다 큰 작업들을 조회합니다. RESTORE DATABASE는 말 그대로 DB 복원을 실행하는 명령어고 percent_complete는 작업의 진행률을 백분율로 표현하는 컬럼입니다. percent_complete이 100이 되면 복원률이 100%라고 생각하시면 될 것 같습니다. 

session_id는 복원 작업이 실행 중인 세션의 ID를 나타내며 total_elapsed_time은 작업이 시작된 후 경과한 총 시간을 나타냅니다. 그리고 estimated_completion_time은 예상 완료 시간을 나타냅니다.

 

 

 

 

반응형
댓글
반응형
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함