利用AUDIT檢視資料庫表結構變化
一朋友問我,想檢視一下資料庫中,表裡邊一個欄位哪天修改欄位長度了,我想到了用資料庫審計來實現,做個實驗,來看下。
朋友那邊資料庫版本是ORACLE10g,10g版本預設沒開啟審計功能,需要開啟審計。
C:\Documents and Settings\Administrator>sqlplus / as sysdba
SQL*Plus: Release 10.2.0.3.0 - Production on 星期一 12月 30 09:57:39 2013
Copyright (c) 1982, 2006, Oracle. All Rights Reserved.
Connected to:
Oracle Database 10g Enterprise Edition Release 10.2.0.3.0 - Production
With the Partitioning, OLAP and Data Mining options
SQL> show parameter audit
NAME TYPE
------------------------------------ ----------------------
VALUE
------------------------------
audit_file_dest string
D:\ORACLE\PRODUCT\10.2.0\ADMIN
\YING8\ADUMP
audit_sys_operations boolean
FALSE
audit_trail string
NONE
SQL> alter system set audit_trail=DB_EXTENDED ;
alter system set audit_trail=DB_EXTENDED
*
ERROR at line 1:
ORA-02095: specified initialization parameter cannot be modified
SQL> alter system set audit_trail=DB_EXTENDED scope=spfile;--靜態引數,這裡的DB_EXTENDED具有捕獲SQL的功能。
System altered.
SQL> shutdown immediate
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL> startup
ORACLE instance started.
Total System Global Area 583008256 bytes
Fixed Size 1291868 bytes
Variable Size 213911972 bytes
Database Buffers 360710144 bytes
Redo Buffers 7094272 bytes
Database mounted.
Database opened.
SQL> show parameter audit
NAME TYPE
------------------------------------ ----------------------
VALUE
------------------------------
audit_file_dest string
D:\ORACLE\PRODUCT\10.2.0\ADMIN
\YING8\ADUMP
audit_sys_operations boolean
FALSE
audit_trail string
DB_EXTENDED
SQL> conn wzz/wzz
Connected.
SQL> desc wh2
ERROR:
ORA-04043: object wh2 does not exist
SQL> create table wh2 (id int);
Table created.
SQL> audit alter on wh2 by access;
Audit succeeded.
SQL> select * from dba_audit_trail;
no rows selected
SQL> alter table wh2 add name varchar2(20);
Table altered.
SQL> select timestamp,owner,obj_name,action,action_name,sql_text from dba_audit_trail;
TIMESTAMP OWNER OBJ_N ACTION ACTION_NAME SQL_TEXT
---------------- ----- ----- ---------- -------------------------------------------------------- ------------------------------
30-12月-2013 WZZ WH2 15 ALTER TABLE alter table wh2 add name varch
ar2(20)
朋友那邊資料庫版本是ORACLE10g,10g版本預設沒開啟審計功能,需要開啟審計。
C:\Documents and Settings\Administrator>sqlplus / as sysdba
SQL*Plus: Release 10.2.0.3.0 - Production on 星期一 12月 30 09:57:39 2013
Copyright (c) 1982, 2006, Oracle. All Rights Reserved.
Connected to:
Oracle Database 10g Enterprise Edition Release 10.2.0.3.0 - Production
With the Partitioning, OLAP and Data Mining options
SQL> show parameter audit
NAME TYPE
------------------------------------ ----------------------
VALUE
------------------------------
audit_file_dest string
D:\ORACLE\PRODUCT\10.2.0\ADMIN
\YING8\ADUMP
audit_sys_operations boolean
FALSE
audit_trail string
NONE
SQL> alter system set audit_trail=DB_EXTENDED ;
alter system set audit_trail=DB_EXTENDED
*
ERROR at line 1:
ORA-02095: specified initialization parameter cannot be modified
SQL> alter system set audit_trail=DB_EXTENDED scope=spfile;--靜態引數,這裡的DB_EXTENDED具有捕獲SQL的功能。
System altered.
SQL> shutdown immediate
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL> startup
ORACLE instance started.
Total System Global Area 583008256 bytes
Fixed Size 1291868 bytes
Variable Size 213911972 bytes
Database Buffers 360710144 bytes
Redo Buffers 7094272 bytes
Database mounted.
Database opened.
SQL> show parameter audit
NAME TYPE
------------------------------------ ----------------------
VALUE
------------------------------
audit_file_dest string
D:\ORACLE\PRODUCT\10.2.0\ADMIN
\YING8\ADUMP
audit_sys_operations boolean
FALSE
audit_trail string
DB_EXTENDED
SQL> conn wzz/wzz
Connected.
SQL> desc wh2
ERROR:
ORA-04043: object wh2 does not exist
SQL> create table wh2 (id int);
Table created.
SQL> audit alter on wh2 by access;
Audit succeeded.
SQL> select * from dba_audit_trail;
no rows selected
SQL> alter table wh2 add name varchar2(20);
Table altered.
SQL> select timestamp,owner,obj_name,action,action_name,sql_text from dba_audit_trail;
TIMESTAMP OWNER OBJ_N ACTION ACTION_NAME SQL_TEXT
---------------- ----- ----- ---------- -------------------------------------------------------- ------------------------------
30-12月-2013 WZZ WH2 15 ALTER TABLE alter table wh2 add name varch
ar2(20)
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/26084062/viewspace-1065526/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 用物化檢視單行同步資料庫時,源表結構變化時的處理步驟資料庫
- DBus資料庫表結構變更處理方案資料庫
- 連線到資料庫,你可以檢視織夢CMS的相關表結構和資料資料庫
- 幾千萬記錄,資料庫表結構如何平滑變更?資料庫
- 【kingbase資料庫】kingbase檢視所有表名資料庫
- 如何在Windows下利用Apche檢視MySQL資料庫?WindowsMySql資料庫
- 資料庫檢視資料庫
- 資料庫-檢視資料庫
- AndroidStudio資料夾結構檢視講解Android
- Agile PLM資料庫表結構(Oracle)資料庫Oracle
- 資料庫表結構發生變化怎麼辦?Smartbi產品支援一鍵同步資料庫
- 資料庫-單表結構-建表語句資料庫
- 資料庫結構的優化資料庫優化
- 結構化資料、半結構化資料和非結構化資料
- 達夢資料庫建立檢視&MyBatis表能不能關聯檢視資料庫MyBatis
- MySQL命令檢視資料庫和表容量大小MySql資料庫
- 1-庫表檢視及常用資料型別資料型別
- Canal-監聽資料庫表的變化資料庫
- GBase8s 檢視資料庫表空間資訊資料庫
- 2.12 資料庫資料字典檢視資料庫
- DBeave如何檢視資料庫表的DDL建立語句資料庫
- oracle資料庫檢視鎖表的sql語句整理Oracle資料庫SQL
- Sqlserver資料庫郵件的體系結構及常用的查詢檢視SQLServer資料庫
- 資料庫的物化檢視資料庫
- openGausspostgreSQL資料庫效能檢視SQL資料庫
- 資料庫檢視的作用資料庫
- 資料庫檢視的使用資料庫
- 織夢資料庫表結構_Dedecms資料庫表和欄位詳細介紹資料庫
- SQL Server資料庫檢視一個資料表各列的註釋SQLServer資料庫
- mysql資料庫-資料結構MySql資料庫資料結構
- 資料庫崩潰恢復表結構的方法資料庫
- 超給力,一鍵生成資料庫文件-資料庫表結構逆向工程資料庫
- InnoDB LOCK檢視變化
- Java檢視變數資料型別Java變數資料型別
- mysql binlog檢視指定資料庫MySql資料庫
- 什麼是資料庫檢視?資料庫
- 結構化資料與非結構化資料的差異
- MySQL資料庫之mysql5.7基礎 檢視一個資料庫中的所有表MySql資料庫
- SQL Server 批量生成資料庫內多個表的表結構SQLServer資料庫