首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > Informix >

Linux 下安装的informix数据库 查看数据操作日志?解决办法

2012-03-01 
Linux 下安装的informix数据库 查看数据操作日志??RT。Linux 下安装的informix数据库 ,怎么查看数据操作日

Linux 下安装的informix数据库 查看数据操作日志??
RT。
Linux 下安装的informix数据库 ,怎么查看数据操作日志?
例如一段时间内的所有sql语句?

或者,给个shell,能够实时显示表数据的变化。。

谢谢

[解决办法]
可以通过如下shell 脚本来监控指定数据库当前SQL 情况
act_sql.sh 脚本如下:
#!/bin/csh
echo "-------- BEGIN! -----------"
foreach sid ( `onstat -g sql|grep -i -v vi|grep -i $1|awk '{print $1}'`)
foreach used_flag ( `onstat -g sql $sid|grep -i $2|wc -l|awk '{print $1}'`)
if $used_flag then
echo "onstat -g sql" $sid
onstat -g sql $sid|grep -i $2
endif
end
end
echo "-------- finish! -----------"
可以利用该脚本来完成如下一些SQL检索功能:
A. 指定表名是否有被访问:act_sql.sh demodb orders
#说明:demodb 为数据库名,orders为搜索表名
B. 列出当前所有正在执行的select (insert,update,delete)操作
act_sql.sh demodb select
act_sql.sh demodb delete
act_sql.sh demodb update
act_sql.sh demodb insert
[解决办法]

探讨
能不能显示一个数据库里所有表的所有操作呢?

或者,不要一下就finish,一直打印可以不?

[解决办法]
通常都不记录所有sql操作,但需要的时候可进行实时监控
IDS的审计功能开启对资源耗费较大,而且在生成内容解释方面也不容易

热点排行