본문 바로가기
Oracle/운영

DML 이력 확인 딕셔너리뷰 (DBA_TAB_MODIFICATION)

by 취미툰 2022. 1. 15.
반응형

 

각 테이블들의 DML 이력을 간단히 확인해볼 수 있는 뷰입니다.

구체적인 이력은 아니지만 TIMESTAMP컬럼을 확인하여 마지막에 DML이 수행되었는지 여부를 확인하거나 할 때 유용할 것 같습니다.

 

주의해야 할 점은, 이건 통계정보가 최종적으로 갱신된 후에 그동안 얼마나 변화가 있었는지를 Optimizer가 가늠하기 위해 존재하는 뷰입니다. Optimizer를 위한 뷰인 것이지, 사용자가 감사 목적으로 사용하라고 있는게 아닙니다.

 

그래서 DML 후에 Rollback 을 하는 경우에도 카운트됩니다.

그리고, 해당 테이블에 통계정보를 다시 만드는 순간 데이터는 모든 초기화됩니다.

 

사용자가 DML 을 수행할 때마다 매번 여기에 기록되지도 않습니다. 성능상의 이유로 3시간에 한번씩만 기록되도록 설계되어 있습니다.

이걸 수동으로 기록되도록 커맨드를 실행할 수도 있습니다.

 

execute DBMS_STATS.FLUSH_DATABASE_MONITORING_INFO;

출처 : https://jack-of-all-trades.tistory.com/355

 

오라클 DML(Insert, Update, Delete) 빈도를 가늠할 수 있는 DBA_TAB_MODIFICATIONS (테이블 변경 내역)

Oracle 딕셔너리중에 특정 테이블에 DML이 얼마나 빈번하게 이루어지고 있는지를 가늠할 수 있는 딕셔너리 뷰가 있습니다. 바로 DBA_TAB_MODIFICATIONS 입니다. USER_TAB_MODIFICATIONS Information regarding mo..

jack-of-all-trades.tistory.com

 

DBA_TAB_MODIFICATIONS 뷰 내용 확인

SQL> select * from dba_tab_modifications
where table_owner='TEST';

TABLE_OWNER                                                                                                                      TABLE_NAME                                                                                                                       PARTITION_NAME                                                                                                                   SUBPARTITION_NAME                                                                                                                INSERTS        UPDATES        DELETES        TIMESTAMP                  TRUNCATED          DROP_SEGMENTS              
-------------------------------------------------------------------------------------------------------------------------------- -------------------------------------------------------------------------------------------------------------------------------- -------------------------------------------------------------------------------------------------------------------------------- -------------------------------------------------------------------------------------------------------------------------------- -------------- -------------- -------------- -------------------------- ------------------ -------------------------- 
TEST                                                                                                                             TBL_NULL                                                                                                                                                                                                                                                                                                                                                                                                        0              0              1 2021/12/28 16:50:12        NO                                          0
TEST                                                                                                                             MAXTEST                                                                                                                                                                                                                                                                                                                                                                                                   1400000              0              0 2022/01/14 15:05:05        NO                                          0
TEST                                                                                                                             TEST_NOCOMP                                                                                                                                                                                                                                                                                                                                                                                               1400000              0              0 2022/01/14 15:20:07        NO                                          0
TEST                                                                                                                             TEST_OLTP                                                                                                                                                                                                                                                                                                                                                                                                 4200000              0        2800000 2022/01/14 15:20:07        YES                                         0
TEST                                                                                                                             TEST_BASIC                                                                                                                                                                                                                                                                                                                                                                                                4200006              0        2800000 2022/01/14 15:20:07        YES                                         0

5 rows selected.

SQL Execution Time > 00:00:00.078
Total Elapsed Time > 00:00:00.219

출처 : https://docs.oracle.com/cd/B19306_01/server.102/b14237/statviews_2097.htm#i1591024

 

ALL_TAB_MODIFICATIONS

ALL_TAB_MODIFICATIONS ALL_TAB_MODIFICATIONS describes tables accessible to the current user that have been modified since the last time statistics were gathered on the tables. Related Views DBA_TAB_MODIFICATIONS provides such information for all tables in

docs.oracle.com

 

반응형

댓글