利用觸發器監控對某個表操作的使用者資訊
1、建立日誌表
create table SQL_MON
(
EXE_TIME DATE,
LOGON_TIME DATE,
SESSION_ID NUMBER,
IP_ADDRESS VARCHAR2(256),
MACHINE VARCHAR2(64),
OSUSER VARCHAR2(30),
PROGRAM VARCHAR2(64),
USERNAME VARCHAR2(30),
SQL_TEXT VARCHAR2(1000)
)
2、用sys使用者建立觸發器
CREATE OR REPLACE TRIGGER tri_test
AFTER update or delete ON kmuser.sd_item_com
FOR EACH ROW
BEGIN
insert into kmuser.sql_mon
select
sysdate exe_time
,s.logon_time
,userenv('sessionid') session_id
,sys_context('userenv','ip_address') ip_address
,s.machine
,s.osuser
,s.program
,s.username
,t.sql_text
from dual
left join v$session s on userenv('sessionid')=s.audsid
left join v$sqlarea t on s.sql_id=t.sql_id
;
END;
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/185751/viewspace-1022635/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- oracle使用觸發器監控哪使用者刪除了表記錄Oracle觸發器
- 監控oracle的觸發器語句(轉)Oracle觸發器
- 通過oracle觸發器記錄修改某表的使用者和ip地址Oracle觸發器
- Oracle 跨使用者表間資料操作(觸發器實現)Oracle觸發器
- 對table的操作進行監控
- 查詢某個表的索引資訊索引
- oracle 觸發器,當一個表更新或插入時將資料同步至另個庫中的某個表中Oracle觸發器
- postgresql 觸發器操作SQL觸發器
- sqlserver監控指令碼_發現某個等待就發出郵件SQLServer指令碼
- 利用v$session_longops監控長操作SessionGo
- DML操作 DDL觸發器觸發器
- 觸發器中操作LOB觸發器
- 利用v$session_longops監控long RUN操作SessionGo
- oracle 觸發器-表同步Oracle觸發器
- Windows監控並重啟某個程式指令碼Windows指令碼
- 如何查詢某個資料表中除某個欄位的所有資訊???
- 監控某個目錄使用情況的shell指令碼指令碼
- 某Q友問題--啟用了for each row觸發器,如何提升forall操作效能觸發器
- Oracle 觸發器 限制DDL操作Oracle觸發器
- goldengate 過濾對某張表的複製操作Go
- 監控行業無線遙控器的3個發展趨勢行業
- 【檢視】利用USER_TAB_MODIFICATIONS檢視輔助監控表的增刪改等操作
- oracle 匯出某個使用者下的表Oracle
- 利用v$session_longops監控long RUN操作(轉)SessionGo
- top資訊監控
- Qwt中對於某個軸的縮放操作
- 用觸發器記錄資料庫使用者登陸資訊觸發器資料庫
- linux下監控某個目錄是否被更改Linux
- WhatsApp對使用者通訊資訊監控 祖克伯未說出真情APP
- [原創] 利用Oracle metric(threshold)監控表空間Oracle
- 利用Oracle threshold(度量閥值)監控表空間Oracle
- 利用Grafana監控influxdb表中資料有效性GrafanaUX
- 和某個session關聯的程式和使用者資訊Session
- 單個指令碼監控主機上所有例項的表空間利用率指令碼
- Process Monitor監控目錄 - 監控檔案被哪個程式操作了
- 利用Loadrunner來監控Linux伺服器Linux伺服器
- Greenplum訪問某個模式的某個表模式
- 分散式監控系統Zabbix3.4-針對MongoDB效能監控操作筆記分散式MongoDB筆記