利用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資料庫表結構變更處理方案資料庫
- Activiti資料庫表結構資料庫
- QC資料庫表結構資料庫
- Oracle 資料庫字典 檢視 基表Oracle資料庫
- 連線到資料庫,你可以檢視織夢CMS的相關表結構和資料資料庫
- MySQL資料庫效能優化之表結構優化(轉)MySql資料庫優化
- 幾千萬記錄,資料庫表結構如何平滑變更?資料庫
- 資料庫資料變成樹型結構資料庫
- 檢視DB2表結構DB2
- 檢視sqlite中的表結構SQLite
- 如何在Windows下利用Apche檢視MySQL資料庫?WindowsMySql資料庫
- 海量資料處理_表結構變更
- 資料庫檢視資料庫
- 資料庫-檢視資料庫
- 資料庫結構的優化資料庫優化
- 結構化資料、半結構化資料和非結構化資料
- 資料庫表結構發生變化怎麼辦?Smartbi產品支援一鍵同步資料庫
- MySQL 對比資料庫表結構MySql資料庫
- Agile PLM資料庫表結構(Oracle)資料庫Oracle
- 資料庫-單表結構-建表語句資料庫
- MYSQL-檢視資料庫或表的大小MySql資料庫
- Oracle 常用資料字典表、檢視的總結Oracle
- Oracle 常用資料字典檢視、表的總結Oracle
- Oracle學習系列—資料庫結構—Mount階段動態檢視Oracle資料庫
- 利用DBCC PAGE檢視SQL Server中的表和索引資料SQLServer索引
- 利用VC++獲取異構型資料庫庫結構資訊 (轉)C++資料庫
- 檢視MySQL資料庫大小的方法總結MySql資料庫
- 達夢資料庫建立檢視&MyBatis表能不能關聯檢視資料庫MyBatis
- MySQL命令檢視資料庫和表容量大小MySql資料庫
- 1-庫表檢視及常用資料型別資料型別
- Oracle 資料庫檢視與基表的關係Oracle資料庫
- Canal-監聽資料庫表的變化資料庫
- Sql Server 獲取指定表、檢視結構SQLServer
- 兩種檢視oracle表結構的方法Oracle
- MySQL資料庫檢視:檢視定義、建立檢視、修改檢視MySql資料庫
- AndroidStudio資料夾結構檢視講解Android