2016-12-14 4 views
0

데이터베이스가 상당히 깁니다 (1100 테이블 정도). 데이터베이스의 스냅 샷을 찍고, 애플리케이션에서 일부 작업을 수행하고, 다른 스냅 샷을 작성하고, 두 테이블을 비교하여 어떤 테이블이 수정되었는지 파악하는 데 관심이 있습니다. Oracle 용 TOAD를 사용하고 있습니다. 이 같은 것이 가능한가요 아니면 그것을 할 수있는 더 좋은 방법이 있습니까?Toad for Oracle을 사용한 데이터베이스 스냅 샷

+0

https://docs.oracle.com/database/121/ARPLS/d_comparison.htm#ARPLS868 –

답변

0

나는 TOAD를 실제로 사용하지 않지만 당신이 원하는 것과 거의 관련이 없다고 생각합니다.

하나의 응용 프로그램 만 실행되고 있다고 가정하면 DBA_TAB_MODIFICATIONS을 검사하여 어떤 테이블이 액세스되었는지 확인할 수 있고 MONITORING 특성이 있어야합니다. ALL_TAB_MODIFICATIONS에 대한 docs를 참조하십시오.이를 모니터 할 테이블에서 Fine-Grained Auditing을 사용하여 결합 할 수 있습니다. 이렇게하면 바인드 변수 등을보고 INSERT, UPDATE 및 DELETE 쿼리를 모니터링 할 수 있습니다. 문서 확인 About Fine-Grained Auditing Fine-Grained 감사를 사용하려면 Enterprise Edition이 있어야합니다.

응용 프로그램이 수행 한 변경 사항을 되돌려 야합니까?

변경 사항을 되돌리려면 Oracle Flashback 기술이 가장 쉽고 간편합니다. 단순히 플래시백 보존 목표에 따라 테이블의 이전 상태를 확인할 수 있습니다. 다시 한 번 해당 문서가 매우 압도적입니다. Using Flashback Database and Restore PointsOracle Flashback query 플래시백 기술은 Oracle에서 구입해야하는 추가 기능입니다.

당신은 이론적으로 데이터베이스 시점 복구를 수행하여이를 수행 할 수 있습니다. 이는 RMAN을 통해 문서의 내용을 확인하십시오. Database Backup and Recovery Basics 10g 이것은 과도한 작업이므로 시나리오에 권장하지 않습니다.

난 당신의 문제에 대한 최선의 접근 방식은 응용 프로그램 측면에서 SQL 쿼리의 로깅을 추가하거나 활성화하는 것이라고 생각합니다.