最后,你可以指定由于某种原因导致不能写审计文件的情况下,系统执行什么操作:
停止(0)模式-在一个用户会话试图写一个审计文件,但是写文件失败,它会等待,然后每秒重试一次。在审计文件可以写之前,这个会话不能做任何操作。
继续(1)模式-这种模式意味着会话会继续下去,即使不能够写审计日志,online的信息日志中会接到一条错误信息,说日志文件不能存取和更新。
HALT(0)是默认的错误模式。
你可以通过两种办法来修改错误模式。
使用onaudit工具:
onaudit -e error-mode
这个命名执行的同时会修改ADTERR配置参数。
修改在$ONCONFIG文件中的ADTERR参数的值,为了让这个改变生效,你必须重新启动online。
显示审计配置
你可以运行onaudit -c 命令来显示审计的配置:如
onaudit -c
Current audit system configuration:
ADTMODE =1
ADTERR = 0
ADTPATH = /work/tmpaudit
ADTSIZE = 5000
Audit file =1
如果online DBSERVERNAME为online1shm,当前的审计文件名为: online1shm.1
使用onaudit设置掩码
onaudit工具同时用来维护审计掩码。可以用它来增加,删除,修改或者输出一个掩码。 _default,_require和_exclude掩码
在增加单独的用户掩码之前,你应该首先设置_default,_require和_exclude掩码,因为这些掩码会决定什么审计事件会被放置在单独用户掩码之中,它们应该被先创建。_require和_exclude掩码中的审计事件会覆盖任何单独的用户掩码。
使用-a选项增加一个掩码。使用-e选项可以增加事件。
增加一个_default掩码:
onaudit -a -u _default -e +ACTB
增加一个_require掩码:
onauit -a -u _require -e +GRTB,GRDB
增加一个_exclude掩码:
onaudit -a -u _exclude -e +RDRW
单独的用户掩码
要为单独用户创建掩码,在-u 选项之后指定一个登录名。如果你有一组用户有相似的审计事件,你可以创建一个掩码模板,要创建一个模本掩码,使用-u选项指定模本名。模本名必须以下划线(_)开头,并且不能超过8个字符。
要利用这个模本创建一个用户掩码,使用-r选项来执行这个模本名。你还可以使用-e选项来增加或者删除模本中的事件。在下例中,用户eric会接收_advance模本中指定的所有的事件(DRTB,DRDB)。用户lucy会接收_advance模本中的所有事件,然后再加上ALTB事件。
增加一个单独的用户掩码:
onaudit -a -u liz -e +DRTB,DRDB
增加一个掩码模本:
onaudit -a -u _advance -e +DRTB,DRDB
应用一个模本给一个用户:
onaudit -a -u eric -r _advance
onaudit -a -u lucy -r _advance -e +ALTB
显示掩码
你可以使用-o选项来列出一个掩码中的所有事件,如:
onaudit -o -u liz
Onaudit -- Audit Subsystem Configuration Utility
copyrigt (c) Informix Software,Inc.,1993
liz-DRDB,DRTB
如果不使用-u指定某个用户,可以列出所有的掩码。
你可以让online只列出成功或者只列出失败的事件方法是在onaudit命令的事件参数之前加上S和F。如果在事件之前没有S或者F,成功和失败的事件都会被审计。
例子:
仅仅审计成功的事件,在事件的前面加上S。
+SDLRW(只记录成功的记录删除)
+FDLRW(只记录失败的记录删除)
修改和删除掩码
修改一个掩码
onaudit -m -u artdy -e -ADCK
删除一个掩码
onaudit -d -u artdy
可以使用-m选项来增加或者删除一个已经存在的掩码中的事件,使用(+)加号可以增加事件,使用(-)号,可以删除事件。
分析审计文件
分析审计文件可以使用两种方式:
通过onshowaudit工具。onshowaudit工具可以重指定的审计文件中提取审计记录
通过数据库表的方式,使用SQL来进行查询。onshowaudit工具可以产生一个文件,然后利用dbload和sql中的load语句将这个文件装载到一个数据库的表中,然后你就可以使用SQL语句来对这个表进行查询.
只有informix用户才能使用onshowaudit工具。
1.使用onshowaudit分析审计记录
你可以使用onshowaudit来提取和列出审计记录。
通过指定审计文件(-f audit_file)。如果使用-f选项,只有指定的审计文件被提取 。如果没有使用-f选项,会自动顺序从最早的文件进行提取。
通过指定用户名(-u login)。只提取指定用户产生的审计记录。一次只能指定一个用户名。
通过数据库服务器名(-s server_name)。只提取指定的主机产生的审计记录。
2.装载审计记录进一个表
你可以使用如下步骤,将审计记录装载如一个表中,然后就可以使用sql语句对其进行分析。
1.创建一个审计数据库,和一个审计表。
2.创建一个可以装载的审计文件:
onshowaudit -1>log_records
3.如果使用dbload,创建一个load命令文件:
FILE log_records delimiter "|" 17;
INSERT INTO audit_table;
4.如果使用dbload,运行dbload命令:
dbload -d audit -c cmd_file
5.如果使用load,运行以下的SQL语句
load from 'log_records' insert into audit_table
关闭审计功能
要关闭审计,你可以执行onaudit命令,指定-1 0 选项,这会立即关闭审计功能。你同样也可以修改$ONCONFIG文件中的ADTMODE配置参数,但是审计只会在系统下一次启动的时候才会关闭。
转 载:http://www.qqread.com/informix/v278414.html相关专题
- 开发优质高效的Informix数据库应用程序(3) (305次浏览)
- Informix Dynamic Server 中的分布式事务 (137次浏览)
- Informix SQL 介绍(1) (119次浏览)
- Informix系统维护技巧 (113次浏览)
- 【Informix系统维护技术】 (111次浏览)
- Informix Online 数据库维护技巧 (106次浏览)



