Oracle10g 有没有文件跟踪 sqlplus 用户的所有操作历史记录呢? Oracle10g 有没有文件跟踪 sqlplus 用户的所有操作历史记录呢? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 我不是说了吗?你可以启动oracle的审计功能.或者打开trace功能.关键是这样会耗费你很多的空间.不建议这样做呀. 有一些参数设置默认是会生成跟踪文件,但一般较少,在想了解数据库的某些性能或动作情况是手动启用。用alter database <参数> to trace;trace的默认路径参数可以查询:show paramete user_dump_dest然后想方便点使用EM去设置不就行了 审计(Audit)用于监视用户所执行的数据库操作,并且Oracle会将审计跟踪结果存放到OS文件(默认位置为$ORACLE_BASE/admin/$ORACLE_SID/adump/)或数据库(存储在system表空间中的 SYS.AUD$表中,可通过视图dba_audit_trail查看)中。默认情况下审计是没有开启的。不管你是否打开数据库的审计功能,以下这些操作系统会强制记录:用管理员权限连接Instance;启动数据库;关闭数据库。下列步骤可以设置ORACLE的审计功能:1.修改参数文件(init<sid>.ora,如果使用服务器参数文件使用alter system set<parameter>=<value> scope=spfile|both,设置AUDIT_TRAIL参数,并且重启数据库。AUDIT_TRAIL的取值如下: DB/TRUE:启动审计功能,并且把审计结果存放在数据库的SYS.AUD$表中OS:启动审计功能,并把审计结果存放在操作系统的审计信息中DB_EXTENDED:具有DB/TRUE的功能,另外填写AUD$的SQLBIND和SQLTEXT字段NONE/FALSE:关闭审计功能 2.如果设置AUDIT_TRAIL = OS,还需要修改参数AUDIT_FILE_DEST。如果操作系统支持设置AUDIT_TRAIL=OS,文件会自动存放在AUDIT_FILE_DEST所指定的目录下,并且文件名包含进程的PID。 比如:AUDIT_FILE_DEST = $ORACLE_HOME/rdbms/audit$ ls -l $ORACLE_HOME/rdbms/audit-rw-rw---- 1 ora92 dba 881 Mar 17 09:57 ora_13264.aud$ ps -ef|grep 13264ora92 13264 13235 0 09:56:43 ? 0:00 oracleV92 (DESCRIPTION=(LOCAL=Y)SQL> select spid, program, username from v$process;SPID PROGRAM USERNAME------ -------------------------------------------- -------------...13264 oracle@frhp11 (TNS V1-V3) ora92 注意:WINDOWS NT不使用AUDIT_FILE_DEST参数,如果使用OS设置,那么审计信息会存放在WINDOWS NT的事件日志里。 3.确认审计相关的表是否已经安装SQLPLUS> connect / AS SYSDBASQLPLUS> select * from sys.aud$; --没有记录返回SQLPLUS> select * from dba_audit_trail;--没有记录返回如果做上述查询的时候发现表不存在,说明审计相关的表还没有安装,需要安装。SQLPLUS> connect / as sysdbaSQLPLUS> @$ORACLE_HOME/rdbms/admin/cataudit.sql审计表安装在SYSTEM表空间。所以要确保SYSTEM表空间又足够的空间存放审计信息。 4.关闭并重启数据库5.设置所需要的审计信息下面是一个例子SQL> connect system/managerSQL> grant audit system to scott; SQL> connect scott/tigerSQL> audit session;停止审计:SQL> noaudit session; 问个关于创建用户的新手问题 数据类型转换出错 请帮忙写一个插入decimal类型数据的sql语句 sql语句的长度限制 ms sql的条件判断语句转换为oracle的 存储过程的这几句话为什么编译不过去? 如何在触发器中使用数据库连接 关于两个表联合查询的问题。 请教查询最新余额的语句 oracle 主表更新的字段值来自从表 设置oracle 客户端连接超时时间,有这么难? oracle数据库没有打开,要采用“sysDBA”模式登录启动
在想了解数据库的某些性能或动作情况是手动启用。
用
alter database <参数> to trace;
trace的默认路径参数可以查询:
show paramete user_dump_dest
然后想方便点使用EM去设置不就行了
1.修改参数文件(init<sid>.ora,如果使用服务器参数文件使用alter system set<parameter>=<value> scope=spfile|both,设置AUDIT_TRAIL参数,并且重启数据库。AUDIT_TRAIL的取值如下: DB/TRUE:启动审计功能,并且把审计结果存放在数据库的SYS.AUD$表中OS:启动审计功能,并把审计结果存放在操作系统的审计信息中DB_EXTENDED:具有DB/TRUE的功能,另外填写AUD$的SQLBIND和SQLTEXT字段NONE/FALSE:关闭审计功能 2.如果设置AUDIT_TRAIL = OS,还需要修改参数AUDIT_FILE_DEST。如果操作系统支持设置AUDIT_TRAIL=OS,文件会自动存放在AUDIT_FILE_DEST所指定的目录下,并且文件名包含进程的PID。 比如:AUDIT_FILE_DEST = $ORACLE_HOME/rdbms/audit$ ls -l $ORACLE_HOME/rdbms/audit-rw-rw---- 1 ora92 dba 881 Mar 17 09:57 ora_13264.aud$ ps -ef|grep 13264ora92 13264 13235 0 09:56:43 ? 0:00 oracleV92 (DESCRIPTION=(LOCAL=Y)SQL> select spid, program, username from v$process;SPID PROGRAM USERNAME------ -------------------------------------------- -------------...13264 oracle@frhp11 (TNS V1-V3) ora92 注意:WINDOWS NT不使用AUDIT_FILE_DEST参数,如果使用OS设置,那么审计信息会存放在WINDOWS NT的事件日志里。 3.确认审计相关的表是否已经安装SQLPLUS> connect / AS SYSDBASQLPLUS> select * from sys.aud$; --没有记录返回SQLPLUS> select * from dba_audit_trail;--没有记录返回如果做上述查询的时候发现表不存在,说明审计相关的表还没有安装,需要安装。
SQLPLUS> connect / as sysdbaSQLPLUS> @$ORACLE_HOME/rdbms/admin/cataudit.sql审计表安装在SYSTEM表空间。所以要确保SYSTEM表空间又足够的空间存放审计信息。 4.关闭并重启数据库
5.设置所需要的审计信息下面是一个例子SQL> connect system/managerSQL> grant audit system to scott; SQL> connect scott/tigerSQL> audit session;停止审计:SQL> noaudit session;