쿼리 delete 문이나 SP 내의 delete 문으로 특정 테이블의 데이터를 지웠다 라는 것에 대한 이력을 알 수 있나요?
예를 들면 특정 테이블에서 언제 delete 문이 실행 되었다. 라던가... 등 이력이요.
궁금합니다!
Comment 2
-
차태욱
2015.02.02 14:56
-
catchv
2015.02.02 15:01
SQL 2000에서는 Log파일 분석으로 정확하게 어떤 값이 수정 삭제 되었는지 알 수 있었습니다. (보는 프로그램 이름은 기억이 안나네요.)
2005 부터는 Log 파일이 암호화(?) 되어 있어서 내용은 정확히 알 수 없는 것으로 알고 있습니다.
( 현재 프로그램이 나왔는지 확인은 안해 봤습니다. )
fn_dblog 를 통해서 어떤 객체에 어떤 작업(delete, insert등)이 어떤시간에 이루어졌는지는 대략 알 수 있습니다.
default trace가 enable 되어 있다면 객체 자체에 대한 변경 사항 등이 기록됩니다. ( fn_trace_gettable )
삭제한 프로시저나 쿼리까지 잡고 싶으시면 트리거를 delete 조건으로 거시고 데이터 삭제 호출한 DML문을 inputBuffer로 잡으시거나......
엔터프라이즈이시면 CDC 거시면되겠네요......(https://msdn.microsoft.com/ko-kr/library/bb933994.aspx)