Oracle8x中监控sysdba角色用户登陆情况

时间:2007-06-15 来源: 作者: 【字体: 减小 增大收藏 | 投稿
  
在Oracle8i版本之前,使用internal用户来执行数据库的启动和关闭以及createdatabase等操作;从8i版本以后,Oracle已经逐渐淘汰了internal用户,采用授与sysdba或者sysoper角色的用户才可以执行数据库的启动和关闭等操作,为保持用户习惯在8i中依旧保留了internal用户和svrmgrl,但已完全可以不使用svrmgrl工具和internal用户了。最新发布的oracle9i已经完全淘汰了svrmgrl工具和internal用户。由于具有角色sysdba的用户权限很大,可以执行数据库的启动和关闭等操作,所以要对具有这些角色的用户进行监控

  在unix平台的Oracle数据库产品中,每次当用户以sysdba权限登陆数据库时,系统就自动创建一个名为ora_.aud的文件,该文件默认在$ORACLE_HOME/rdbms/audit目录下。该文件的自动创建根本不需要系统打开审计功能。在这个文件中记录了连接的用户,终端机器的名称以及登陆时间等信息。根据这些信息,我们可以很容易地监控到是何人在何时以sysdba权限登陆数据库。下面是一个例子: 财软联.盟.fs119.net

  1.首先在客户端sqlplus中以sysdba连接数据库服务器:

   SQL>connsys@gs1assysdba

  请输入口令:********

  已连接。

  2.查看服务器端$ORACLE_HOME/rdbms/audit目录下最新的ora_.aud文件内容:

nbtax1>catora_589980.aud
Auditfile/ora1/oracle/app/product/8.1.6/rdbms/audit/ora_589980.aud
Oracle8iEnterpriseEditionRelease8.1.6.3.0-Production
WiththePartitioningandParallelServeroptions
JServerRelease8.1.6.3.0-Production
ORACLE_HOME=/ora1/oracle/app/product/8.1.6
Systemname:OSF1--系统名称
Nodename:nbtax1--节点名称
Release:V5.1--操作系统版本号
Version:732
Machine:alpha--服务器名称
Instancename:nbgs1--实例名称
Redothreadmountedbythisinstance:1
Oracleprocessnumber:247--Oracle进程号
Unixprocesspid:589980,image:oracle@nbtax1(TNSV1-V3)
FriSep2110:26:572001--登陆时间
财管家 园 fs119.net

ACTION:'connectinternal'OSPRIV:DBA--执行何种操作
CLIENTUSER:Administrator--客户端用户名称
CLIENTTERMINAL:XIAOFEISHI--客户端终端名称
  从上面文件中的内容我们可以看到,该文件详细记录了登陆时间,执行的操作,客户端用户的名称,以及登陆服务器终端机器的名称。根据这些信息我们就很容易确定何人何时以sysdba权限登陆过数据库服务器。注意ora_589980.aud文件中的汉字解释均为作者所加,不是系统自动生成。

财 软联盟 fs119.net


上一篇:全新感受Oracle9i
下一篇:Oracle不同数据库间对比分析脚本

精品课程推荐