用oracle中的LOGMINER工具可以从数据库的联机和归档重做日志中分析和提取有价值的信息。
解决方案 »
- 急: 我这个是四条代码现在想合成一个代码怎么写啊???这四条代码都是互相矛盾的请大师帮忙看看谢谢了弄好了可以加分
- 关于存储过程参数
- 使用oo4o写Oracle数据库时内存增加
- ora-00907错误问题,求教。
- 高分请教高手 老版Oracle 8i order by 语句
- 用java写了一段程序,生成了一段sql,如何在oracle里判断这段sql正确与否???
- 菜鸟提问 mysql问题 急!!!!
- 请问SQL Loader将txt导入oracle如何将某一字段设为固定值?
- 漢字的排序是按那种規律??
- 关于新建触发器的问题
- Oracle数据库“Access Violation”的错误
- sql 时间重复
增加字段能造成线上故障,是sql语句中,尤其是insert语句没有指明字段吧
写语句不指明具体字段名称后患无穷啊
也有可能是select * 造成的
写语句不指明具体字段名称后患无穷啊是使用一个工具根据数据库中的表生成对应的sqlMap映射文件的。 在测试环境中有这几个字段,所以生成的sqlMap里面就多了这几个字段, 这个sqlMap发到线上之后, 由于线上没有这几个字段,所以就报错了。
一。oracle中审计的配置:
1.审计相关的三个重要参数:
a.audit_file_dest:指定审计文件存放的位置:
b.audit_trail:指定审计的类型:
none:为系统默认值,不进行审计
DB:将审计结果放在数据库表中,aud$,通常只记录连接的信息.
DB_EXTENDED:将审计结果放在数据库表中,记录具体执行语句
OS:将审计结果记录在操作系统文件中,文件位置由audit_file_dest参数指定,(windows系统中将直接在事件查看器的系统日志中记录)
XML:将审计结果记录在audit_file_dest指定位置下的XML文件中。
c.audit_sys_operations:是否对sysdba用户做审计 ,关于sysdba用户审计的结果,linux存放在audit_file_dest参数指定位置的aud文件中,windows存放在事件查看器的系统日志中 2.审计的级别:
开启审计后,可在statement语句、privilege权限和object对象级别对数据库进行审计。
a.statement:按语句来审计如audit table xxx;
b.privilege:按权限来审计,如audit select any table
c.object:按对象来审计,如audit all on hr.employees by HR,只会对hr用户对employees表执行的操作做审计
3.审计的其它相关选项:
by access 每个被审计的操作都会生成一条记录
by session 默认值,每个会话里同类型操作只会生成一条audit trail
whenever successful:操作成功才审计
whenever not successful:操作不成功才审计
4.查询审计结果的视图
dba_audit_trail:查看所有的普通审计记录
dba_fga_audit_trail:查看所有细粒度审计记录
sys.aud$审计结果实际存放的系统表
5.取消审计: noaudit select any table
6.开启审计方法
a.查看参数
SQL> show parameter auditNAME TYPE VALUE
------------------------------------ ----------- ------------------------------
audit_file_dest string /u01/oracle/product/admin/orcl
/adump
audit_sys_operations boolean FALSE
audit_syslog_level string
audit_trail string NONE
b.设置审计类型并重启数据库
SQL> alter system set audit_trail = db_extended scope=spfile;System altered.
c.审计用户对表操作
SQL> audit table ;Audit succeeded.
d.切换用户后创建表
SQL> connect test/[email protected]/orcl
Connected.
SQL> create table audtest (id int);Table created.
e.管理员登录查看审计结果
SQL> connect sys/[email protected]/orcl as sysdba
Connected.
SQL> select username,sql_text from dba_audit_trail;USERNAME
------------------------------
SQL_TEXT
--------------------------------------------------------------------------------
TEST
create table audtest (id int)详细参照 http://www.cnblogs.com/CodingArt/articles/1772381.html