SQL Server를 다시 시작하지 마십시오. 복구가 수행되므로 삭제를 포함하여 완료되지 않은 모든 트랜잭션을 롤백하거나 다시 실행할 수 있기 때문에 고통을 연장 할뿐입니다.
삭제를 실행중인 세션을 종료하면 롤백이 발생하고 완료하는 데 시간이 오래 걸립니다.
다음 쿼리를보고 작업 상태를 확인하려고합니다.
SELECT des.session_id
, des.host_name
, des.login_name
, der.command
, der.estimated_completion_time
, der.blocking_session_id
, der.last_wait_type
, der.percent_complete
, der.start_time
, der.status
, der.wait_resource
, der.wait_type
, der.wait_time
FROM sys.dm_exec_sessions des
INNER JOIN sys.dm_exec_requests der ON des.session_id = der.session_id
WHERE des.session_id <> @@SPID
AND des.is_user_process = 1
ORDER BY des.session_id;
열과이 percent_complete
열에 의존하는 열 estimated_completion_time
은 다음 작업에 대해서만 채워집니다.
ALTER INDEX REORGANIZE
AUTO_SHRINK option with ALTER DATABASE
BACKUP DATABASE
DBCC CHECKDB
DBCC CHECKFILEGROUP
DBCC CHECKTABLE
DBCC INDEXDEFRAG
DBCC SHRINKDATABASE
DBCC SHRINKFILE
RECOVERY
RESTORE DATABASE
ROLLBACK
TDE ENCRYPTION
따라서 delete 문을 이미 취소하고 열을 롤백하거나 이미 SQL Server를 다시 시작하여 복구중인 경우에만 해당 열이 의미가 있음을 알 수 있습니다.
blocking_session_id
열에 숫자가 포함되어 있으면 다른 세션이 삭제 작업을 차단하고 있음을 나타냅니다. 해당 세션이 시작된 이후 삭제 조작을 차단 한 경우 롤백을 수행하지 않아도 조작을 취소 할 수 있습니다.