开启Oracle的LOGMINER
1.确认Oracle是否带有进行LogMiner分析包
如果不能确认,可以DBA身份登录系统,查看系统中是否存在运行LogMiner所需要的dbms_logmnr、dbms_logmnr_d包,如果没有需要安装LogMiner工具,必须首先要运行下面这样两个脚本:
1、$ORACLE_HOME/rdbms/admin/dbmslm.sql
2、$ORACLE_HOME/rdbms/admin/dbmslmd.sql.
开启数据库Logminer 解析日志
2.连接数据库
使用sysdba用户,以下用户名,密码,数据库实例改为自己的即可
sqlplus sys/a123456@orcl as sysdba
3.查看数据库是否为归档模式(以下两图为已设置好的情况,若为归档,跳过4-10)
SELECT dbid, name, log_mode FROM v$database;
或者
ARCHIVE LOG LIST;
4.设置归档日志文件路径
ALTER SYSTEM SET log_archive_dest="D:\oracle\archive";
5.设置日志文件名称格式
ALTER SYSTEM SET log_archive_format="ARC%S_%R.%T" SCOPE=SPFILE;
6.修改完毕后,关闭数据库,以MOUNT方式启动
SHUTDOWN IMMEDIATE;
STARTUP MONNT;
7.创建数据库为归档模式
ALTER DATABASE ARCHIVELOG;
8.查看归档是否设置成功
SELECT dbid, name, log_mode FROM v$database;
或者
ARCHIVE LOG LIST;
9.验证参数设置是否起作用
SELECT dest_id, status, destination FROM v$archive_dest WHERE dest_id =1;
10.在参数设置起作用后,打开数据库
ALTER DATABASE OPEN;
11.查看Logminer文件夹是否设置
SHOW PARAMETER utl_file_dir;
12.查询数据库级别的日志追加选项是否已经开启(11,12都设置成功,则跳过剩余步骤)
SELECTSUPPLEMENTAL_LOG_DATA_MIN,SUPPLEMENTAL_LOG_DATA_PK,SUPPLEMENTAL_LOG_DATA_UI,
SUPPLEMENTAL_LOG_DATA_FK,SUPPLEMENTAL_LOG_DATA_ALLFROM V$DATABASE;
13.创建数据字典文件
若第一次创建:CREATE DIRECTORYutlfile AS 'D:\oracle\dictionary';
下图说明之前已经创建。
对字典文件路径做出修改:alter systemset utl_file_dir='D:\oracle\dictionary' scope=spfile;
14.开启LogMiner日志补充模式
alter database add supplemental log data;
15.查询数据库级别的日志追加选项是否已经开启
SELECTSUPPLEMENTAL_LOG_DATA_MIN,SUPPLEMENTAL_LOG_DATA_PK,SUPPLEMENTAL_LOG_DATA_UI,
SUPPLEMENTAL_LOG_DATA_FK,SUPPLEMENTAL_LOG_DATA_ALLFROM V$DATABASE;
SUPPLEMENTAL_LOG_DATA_MIN字段存储值为YES即为设置成功
16.修改完毕后,关闭数据库,以MOUNT方式启动
SHUTDOWN IMMEDIATE;
STARTUP;
17.查看Logminer文件夹是否设置
SHOW PARAMETER utl_file_dir;
18.生成数据字典文件
注意:数据库对象发生变化,需要重新创建数据字典文件
EXECUTEdbms_logmnr_d.build(dictionary_filename => 'dictionary.ora',dictionary_location =>'D:\oracle\dictionary');