oracle如何读懂日志 oracle日志怎么查看

如何分析oracle日志文件Oracle日志查看
一.Oracle日志的路径:
登录:sqlplus "/as sysdba"
查看路径:SQL select * from v$logfile;
SQL select * from v$logfile;(#日志文件路径)
二.Oracle日志文件包含哪些内容:(日志的数量可能略有不同)
control01.ctl example01.dbf redo02.log sysaux01.dbf undotbs01.dbf
control02.ctl redo03.log system01.dbf users01.dbf
control03.ctl redo01.log SHTTEST.dbf temp01.dbf
三.Oracle日志的查看方法:
SQLselect * from v$sql (#查看最近所作的操作)
SQLselect * fromv $sqlarea(#查看最近所作的操作)
Oracle 数据库的所有更改都记录在日志中,从目前来看,分析Oracle日志的唯一方法就是使用Oracle公司提供的LogMiner来进行,因为原始的日志信息我们根本无法看懂,Oracle8i后续版本中自带了LogMiner,而LogMiner就是让我们看懂日志信息的工具,通过这个工具可以:查明数据库的逻辑更改,侦察并更正用户的误操作,执行事后审计,执行变化分析 。
如何对oracle11g日志分析logminer作为相关的日志分析工具集成与oracle中,我们可通过该工具清楚的分析重做相关日志和归档日志中的所有事物变化,并且可以准确的确定各种DML和DDL操作的具体时间和SCN值 。
通过logminer我们可以实现:
1,确定数据的逻辑损坏的时间
2,跟踪用户执行的事务变化操作
3,跟踪表的DML操作
如果我们要分析归档日志,我们首先修改oracle归档日志的模式,我们要把默认的归档路径改成我们自己的路径:
start mount;
alter database archivelog;
alter database open;
alter system set log_archive_dest_1='location=d:\oracle' scope=spfile;
alter system set log_archive_format='arch_%t_%s_%r.trc' scope=spfile;
查看我们修改过的归档路径:
archive log list;
查看归档日志:
select name,dest_id from v$archived_log;
如果查询的没有更改,我们需要重启一下数据库
安装logminer , 安装logminer需要我们安装下面的几个包:
$ORACLE_HOME/rdbms/admin/dbmslm.sql
$ORACLE_HOME/rdbms/admin/dbmslmd.sql
$ORACLE_HOME/rdbms/admin/dbmslms.sql
这几个脚本必须是sys用户运行
@$ORACLE_HOME/rdbms/admin/dbmslm.sql
@$ORACLE_HOME/rdbms/admin/dbmslmd.sql
@$ORACLE_HOME/rdbms/admin/dbmslms.sql
添加数据字典,需要添加参数utl_file_dir ,
alter system set utl_file_dir='/home/oracle/dir' scope=spfile;
添加supplement logging
首先查看
select name,supplemental_log_data_min from v$database;是否是yes
YES为打开状态,会记录session_info,username等信息
NO为关闭状态 , 不会记录sesion_info,username等信息
添加
alter database add supplemental log data;
关闭
alter database drop supplemental log data;
重启数据库,这样我们刚才的两个参数就会生效;
查看数据字典:
show parameter utl;
添加数据字典:
SQL begin
2dbms_logmnr_d.build(
3dictionary_filename='logminer_dict.dat',
4dictionary_location='/home/oracle/logminer');
5end;
6/
PL/SQL procedure successfully completed.
或是:
execute dbms_logmnr_d.build(dictionary_filename='logminer_dict.dat',dictionary_location='/home/oracle/logminer');
创建登录触发器:
SQL create or replace trigger on_logon_tigger
2after logon on database
3begin
4dbms_application_info.set_client_info(sys_context('userenv','ip_address'));
5end;
6/
Trigger created.
我们就可以在V$SESSION视图的CLIENT_INFO列中看到新登录的客户端IP地址了 。那么现在就可以在
添加要分析的归档日志文件
SQL begin
2dbms_logmnr.add_logfile(
3logfilename='/home/oracle/arch/arch_6_758944049_1.trc',options=dbms_logmnr.new);
4end;
5/
PL/SQL procedure successfully completed.
SQL begin
2dbms_logmnr.add_logfile(
3logfilename='/home/oracle/arch/arch_7_758944049_1.trc',
4options=dbms_logmnr.addfile);
5end;
6/
PL/SQL procedure successfully completed.
切换归档日志:
alter system switch logfile;
开启分析:
execute dmbs_logmnr.start_logmnr(dictfilename='/home/oracle/logminer/logminer_dict.dat');
或是:
execute dbms_logmnr.start_logmnr;
查询归档日志:
SQL select name from v$archived_log;
NAME
--------------------------------------------------------------------------------
/home/oracle/arch/arch_6_758944049_1.trc
/home/oracle/arch/arch_7_758944049_1.trc
/home/oracle/arch/arch_8_758944049_1.trc
为了节约pga的空间,当我们分析完日志后,移除不需要的日志:
SQL begin
2dbms_logmnr.add_logfile(
【oracle如何读懂日志 oracle日志怎么查看】3logfilename='/home/oracle/arch/arch_7_758944049_1.trc',
4options=dbms_logmnr.removefile);
5end;
6/
PL/SQL procedure successfully completed.
查询结果在v$logmnr_contents;
查询数据库上面的操作
select scn,sql_redo,timestamp from v$logmnr.contents;
关闭分析
execute dbms_logmnr.stop_logmnr;
查询的时候最好使用plsql查询 。
oracle imp 如何查看导入日志1、打开plsql , 输入用户名密码登录到数据库 。
2、可以在plsql中看到很多的功能菜单 。
3、选中”工具“打开,可以看到有”导入表“和”导出表“ 。
4、打开”导入表“,oracle导入,可以导入约束、索引、授权等,注意此时没有选择”提交“ 。
5、首选需要选择导入可执行文件,从oracle客户端安装路径中查找 , 修改imp*.exe,删掉*,找到imp.exe,单击确定 。
6、数据表开始导入,列出的导入的行,导入状态以及最终结果 。
关于oracle如何读懂日志和oracle日志怎么查看的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站 。

    推荐阅读