Oracle中審計參數audit_trail的討論
2024-08-29 13:35:11
供稿:網友
近日,逐步開始課題的研究。具體內容可以參考《我的課題》欄目下的內容,那里涉及了課題的主要研究內容。 目前仍在探索階段,尤其是對Oracle的熟悉,也在隨著不斷地學習在逐步加深。課題的題目是《安全審計技術在電子政務中的應用研究》,其中一個重要的內容就是利用oracle 9i提供的審計功能,來與應用層的審計相配合?! 〕跗诘南敕?,一直想在應用系統層提供一個接口——審計的開/關。即可以答應在應用系統級打開或者關閉數據庫的審計功能,但是,嘗試了幾天,得到的結論似乎是:audit_trail參數,是非動態修改參數,也就是說,通過alter system修改時,只能加上scope=spfile,那么也就是說,假如要開啟/關閉審計功能,一定要重啟數據庫。。。?! 〖偃缡沁@樣的話,自然就不能靈活開/關審計功能,也就沒辦法提供給應用系統層一個真正有價值的開/關接口。因為每次都需要重新啟動數據庫,這對應用系統的運行是有很大影響的。 下面是我在oracle 10g中試驗的結果(因為9i中總是在關閉后再啟動的時候出現錯誤,具體原因未明了……),我想,10g尚且如此,那9i肯定也沒戲了…… --先顯示一下當前的audit_trail參數值
SQL> show parameter audit_trail
NAME TYPE VALUE
audit_trail string DB
--修改audit_trail參數值
SQL> alter system set audit_trail='FALSE';
alter system set audit_trail='FALSE' ERROR at line 1:
ORA-02095: specified initialization parameter cannot be modifie SQL> alter system set audit_trail='FALSE' scope = both;
alter system set audit_trail='FALSE' scope = both ERROR at line 1:
ORA-02095: specified initialization parameter cannot be modifie
--只能修改到spfile
SQL> alter system set audit_trail='FALSE' scope=spfile;
System altered. --顯示audit_trail參數值,說明當前實例未更改
SQL> show parameter audit_trail
NAME TYPE VALUE
audit_trail string DBSQL> shutdown normal
ORA-01031: insufficient PRivileges
SQL> conn / as sysdba;
Connected.
SQL> shutdown normal;
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL> startup
ORACLE instance started.
Total System Global Area 171966464 bytes
Fixed Size 787988 bytes
Variable Size 144964076 bytes
Database Buffers 25165824 bytes
Redo Buffers 1048576 bytes
Database mounted.
Database opened.
--重新啟動后,audit_trail參數值已經更改……
SQL> show parameter audit_trail;
NAME TYPE VALUE
audit_trail string FALSE
這里僅僅對一個審計參數的初始化和修改進行了說明,路過的假如有oracle的高手們,是如何操作的,使之能夠實現動態修改呢,或者有沒有別的方案實現審計,而不是每次都需要重新啟動數據庫……。不吝指教……呵呵