데이터베이스 개발자 질문과 답변 게시판
데이터베이스 개발/운영 관련 질문과 답변을 올리는 게시판입니다. 궁금하신 내용을 이곳에서 문의하시면 SQLER 분들의 답변을 받으실 수 있습니다. 문의를 하실때에는 최근 작업하신 특이 사항이나, 장애 발생 전 상황을 상세히 올려 주시면 답글을 적어주시는 SQLER분들의 답변이 더 정확할 수 있으니 도움 되시길 바랍니다. 쿼리 문의일 경우, 실제 문제가 재현되는 테이블생성, 샘플데이터 생성 쿼리를 함께 올려 주시면 더 빠르고 정확한 쿼리 문의 응답이 가능합니다.
프로시저를 잘못실행 시켯습니다.(배치도는 프로시저)
해서 sp_who 찾아 kill 시켯는데..
이넘이 계속 도네요...-_-;;
어떻게 합니까 도저히 방법을 찾을수가 읍네요
서버 리부팅해도 소용없구 ㅠㅠ
Comment 2
-
History
2013.11.11 10:58
-
SQL Server의 트랜잭션 프로세싱은 ACID라는 속성을 가지고 있는데요.
원자성, 일관성, 격리성, 영속성 입니다.
이중 영속성은 시스템이 고장이 나더라도 트랜잭션의 효과가 유지되도록 보장합니다.
트랜잭션이 진행되는 동안 Kill을 하거나 시스템에 문제가 생기면
트랜잭션이 완전히 원래 상태로 되돌려지고,
데이터가 부분적으로 영향을 받는 일이 없게 됩니다.
만약 트랜잭션이 커밋 되기 전에 시스템을 꺼버리고 다시 켠다면
미리 쓰기 로깅과 트랜잭션의 자동 롤백 및 롤포워드가 영속성을 보증하게 됩니다. (이상 Inside SQL에서 발췌)
프로시져가 대량의 Update / Insert 실행중인 것이면 Kill 시 Rollback 이 진행중입니다...
일반적으로 해당 프로세스 Kill ( SpID ) 를 해보시면 Rollback 진행중 하면서 예상 몇% 라는 글이 노출됩니다
Rollback 이 진행되는건 서버를 재부팅한다고 중지되지 않으며 해당 작업이 끝날때 까지 기다리셔야 됩니다.