oracle数据库用户审计

喜欢而已 提交于 2019-12-05 07:09:04
开启网络监听
查看网络监听器状态
lsnrctl status
关闭监听器
lsnrctl stop
cd $ORACLE_HOME/network/admin
修改:
listener.ora
tnsnames.ora
开启监听器
lsnrctl start
 
 
查看数据库本地监听器
SQL>
show parameter local

指定数据库库中监听器。
alter system set local_listener='listener_orcl'
 
到此,用户可以使用网络登陆
 
 


监控sysdba操作
show parameter audit
NAME      TYPE  VALUE
------------------------------------ ----------- ------------------------------
audit_file_dest      string  /u01/app/oracle/admin/orcl/adu     #审计文件位置
 mp
audit_sys_operations      boolean  FALSE     #开/关sysdba 所有操作记录。
audit_syslog_level      string
audit_trail      string  DB
默认记录:connect,开/关库,错误信息
 
 
 
 
监控指定用户操作(v$session,v$process)
开启网络
远端用户连接
sqlplus scott/tiger@172.25.7.10:1521/orcl.example.com
本地查看会话连接
select sid,serial#,username,machine from v$session where username is not null;
       SID    SERIAL# USERNAME    MACHINE
---------- ---------- -------------------- -----------------------------------
       125     5 SYS    oracle0.example.com
       137   171 SCOTT    oracle5.example.com
找到用户对应SID,SERIAL#
 
查找监听工具
desc dbms_system
PROCEDURE SET_SQL_TRACE_IN_SESSION
 Argument Name Type In/Out Default?
 ------------------------------ ----------------------- ------ --------
 SID NUMBER IN
 SERIAL# NUMBER IN
 SQL_TRACE BOOLEAN IN
使用监听工具:
语法:
exec dbms_system.SET_SQL_TRACE_IN_SESSION(SID,SERIAL#,SQL_TRACE);
开启:
exec dbms_system.SET_SQL_TRACE_IN_SESSION(137,171,true);
关闭:
exec dbms_system.SET_SQL_TRACE_IN_SESSION(137,171,false);
 
 
查找监听文件位置(文件命名规则:orcl_ora_spid.trc/.trm)
查找系统pid,在数据库内称为spid(系统pid)
select spid from v$process p,v$session s where p.addr=s.paddr and s.sid=137;
SPID
-------------
7275
进入诊断文件位置
cd /u01/app/oracle/diag/rdbms/orcl/orcl/trace
根据pid查找文件
ll *spid*
 
 
 
查看文件:
格式化跟踪文件:
tkprof file_name  out_filename
深度简化格式化(不看系统命令)

tkprof file_name out_filename sys=no



易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!