2013-07-24 3 views
0

나는이 문제는 이전 버전의 SQL Server에 대한 여러 번 질문을 받았다 알고 있지만,이 SQL 서버에 쉽게 만들어진 경우 궁금하네요 2014SQL Server 2014에서 UPDATE 쿼리를 롤백하는 방법은 무엇입니까?

나는

여기에 표시됩니다 다른 버전에 대한 기술을 잘 알고있어

How can I rollback an UPDATE query in SQL server 2005?

Undo table updates in SQL Server 2008

그래서 질문 : 이전 버전에서는 사용할 수 없었던 SQL 서버 2014에서 롤백 할 수 있습니다 아무것도 UPDATE 쿼리가 있습니까?

저는 커밋 된 명령을 말하고 있습니다. 쿼리가 트랜잭션 내부에 있으면 롤백 할 수 있다는 것을 알고 있습니다.

우리 장소에서 전체, 차등 및 트랜잭션 로그 백업을 가지고 있지만 우리가 정말

+0

비동기 트리거를 사용하여 업데이트 저널을 작성할 수 있습니다. 2014 년에는 새로운 것이 아니지만 트릭을 할 가능성이 높습니다. –

답변

1

내가 아는 바로는 여기에는 새로운 것이 없습니다. MS는 SQL Server의 엔터프라이즈 급 기능 (메모리 쿼리, 고 가용성 등)에 주력하고 있습니다. 지금까지 내가 실수로 갱신을 취소 옵션을 알고

은 다음과 같습니다 어떤 $ 비용 않는

  • 타사 로그 독자 (나는 약 Apex LogQuest Toad을 알고 있지만 너무 다른 사람이있을 수 있습니다)
  • 복원 다른 데이터베이스의 최신 백업과 같이 같은
  • 이 fn_dblog 기능을 사용하여 트랜잭션 로그를 읽는 시간의 톤을 보내 데이터베이스의 차이를 확인 here
5

아무 것도 SQL 서버의 최신 버전으로 변경되었습니다 ... 보조 데이터베이스 등으로 백업을 복원과 복구 시나리오를 피하기 위해 싶습니다하십시오 커밋 된 트랜잭션은 여전히 ​​영구적 인 것으로 간주되므로 롤백의 유일한 방법은 이전 백업으로 되돌리고 해당 시점까지 트랜잭션 로그를 적용하는 것입니다.

추가 편집

...
가 SQL Server의 몇 가지 버전 존재하고 다른 하나의 도구이며, 그 스냅 샷입니다. 데이터베이스를 이전 스냅 샷으로 되돌릴 수 있습니다 (예 : http://msdn.microsoft.com/en-us/library/ms189281(v=sql.105).aspx에서 SQL 2008에 대한 지침). 그러나이 백업과 트랜잭션 로그는 여전히 사용할 수 있어야합니다. 스냅 샷이 성능에 어떤 영향을 미쳤는지 연구해야합니다. 유용성을 보장 할 수는 없습니다. 개발 환경이나 테스트 환경에서는 이상적이지만 프로덕션에서는 그렇지 않습니다.

관련 문제