我只是个菜鸟程序员,数据库这块懂的很少,可能讲的很不专业,见谅!
情况是这样的:数据库(oracle10g)里面有张表里面的部分记录数据都变成了0,现在没有查到具体原因,我想要通过查看数据库的sql语句执行的具体记录确定一下问题发生的具体时间(领导吩咐的任务总得有答复,你们懂的),通过baidu知道了可以通过查询 v$sqlarea 这个视图来查看sql语句执行记录,但是我查询之后发现里面 LAST_ACTIVE_TIME 最早的是10天前的记录,数据变成0这个情况发现的时间远比10天前要早,请问我怎样才能查看更早些时间的sql语句执行记录?另外,怎样设置才能这些记录保存的条数多一些,时间久一些?避免下次再查的时候查不到sql执行记录oracle语句执行记录
情况是这样的:数据库(oracle10g)里面有张表里面的部分记录数据都变成了0,现在没有查到具体原因,我想要通过查看数据库的sql语句执行的具体记录确定一下问题发生的具体时间(领导吩咐的任务总得有答复,你们懂的),通过baidu知道了可以通过查询 v$sqlarea 这个视图来查看sql语句执行记录,但是我查询之后发现里面 LAST_ACTIVE_TIME 最早的是10天前的记录,数据变成0这个情况发现的时间远比10天前要早,请问我怎样才能查看更早些时间的sql语句执行记录?另外,怎样设置才能这些记录保存的条数多一些,时间久一些?避免下次再查的时候查不到sql执行记录oracle语句执行记录
SQL-》show parameter audit
了一下,发现audit_sys_operation
和 audit_trail 都是falselogminer我没用过,网上查了查这东西用之前需要先安装
由于客户的安全策略,我要连数据库只能先远程到客户那边一台window机器,再在那台机器上通过他们的一个内网小地址连接数据库,我不太敢操作,怕出问题那台机器上有安装plsql,能否通过plsql查以前的sql语句执行情况啊?
如果系统不忙,flashback_transaction_query这个表先试试,看能否到10天前
PL/SQL恐怕也不行吧
如果你的系统是10g及以上的,只要直接把日志文件加载,然后分析即可。10g其实不需要生成dictionary文件了。
select name from v$archived_log;
这个语句可以查询日志文件路径
我查了一下,发现是空的 =,=
什么情况,莫非这个日志文件不是默认保存的?需要做配置吗?还是说我上面这个查日志路径的语句不对啊?
我只是个java程序员
略懂一点oracle的知识
如果您有空且方便的话,我希望能加您QQ说
求传说中的一站式服务