玩轉logminer-9i以前版本做法(一)
9I之前支援外部平面檔案方式(FLAT FILE)方式,需要設定UTL_FILE_DIR,而這種方式需要重新啟動資料庫,對日誌的分析帶來很大的困難,特別是高可用資料庫環境,一般沒有重啟資料庫的機會。針對這種方法,做一下簡單測試:
進行如下測試:
SQL> conn sys/oracle as sysdba
Connected.
1、建立DBMS_LOGMNR包(在/ORACLE_HOME/rdms/admin下)
SQL> @dbmslm.sql
Package created.
Grant succeeded.
2.建立相關資料字典
SQL> @dbmslmd.sql
Package created.
3、建立測試環境,建立一個表APPLE,插入資料,然後將資料刪除。
記錄當前歸檔日誌資訊:
SQL> [oracle@test archivelog]$ cd 2008_09_05
[oracle@test 2008_09_05]$ ls
o1_mf_1_59_4d11o5z1_.arc o1_mf_1_64_4d11ttt2_.arc o1_mf_1_69_4d11zt4f_.arc
o1_mf_1_60_4d11p9rt_.arc o1_mf_1_65_4d11vyvy_.arc o1_mf_1_70_4d121h5w_.arc
o1_mf_1_61_4d11qhmp_.arc o1_mf_1_66_4d11x22p_.arc o1_mf_1_71_4d1230cr_.arc
o1_mf_1_62_4d11rn95_.arc o1_mf_1_67_4d11xdov_.arc o1_mf_1_72_4d124qm6_.arc
o1_mf_1_63_4d11sqk1_.arc o1_mf_1_68_4d11yojt_.arc
alter system archive log current;
System altered.
SQL> create table apple (a int);
Table created.
SQL> insert into apple values(1);
1 row created.
SQL> insert into apple values(2);
1 row created.
SQL> insert into apple values(3);
1 row created.
SQL> select * from apple;
A
----------
1
2
3
SQL> commit;
Commit complete.
SQL> delete from apple;
3 rows deleted.
SQL> commit ;
Commit complete.
SQL> alter system archive log current;
System altered.
進行一系列操作完畢察看歸檔日誌:
[oracle@test 2008_09_05]$ ls
o1_mf_1_59_4d11o5z1_.arc o1_mf_1_65_4d11vyvy_.arc o1_mf_1_71_4d1230cr_.arc
o1_mf_1_60_4d11p9rt_.arc o1_mf_1_66_4d11x22p_.arc o1_mf_1_72_4d124qm6_.arc
o1_mf_1_61_4d11qhmp_.arc o1_mf_1_67_4d11xdov_.arc o1_mf_1_73_4d18b84j_.arc
o1_mf_1_62_4d11rn95_.arc o1_mf_1_68_4d11yojt_.arc o1_mf_1_74_4d18hz4h_.arc
o1_mf_1_63_4d11sqk1_.arc o1_mf_1_69_4d11zt4f_.arc
o1_mf_1_64_4d11ttt2_.arc o1_mf_1_70_4d121h5w_.arc
此時多了兩個歸檔日誌:o1_mf_1_73_4d18b84j_.arc和 o1_mf_1_74_4d18hz4h_.arc。
修改初始化引數UTL_FILE_DIR,指定分析資料的存放處:
SQL> alter system set UTL_FILE_DIR='/opt/app/logminer' scope=spfile;
System altered.
建立資料字典存放路徑:
[root@test dbs]# mkdir /opt/app/logminer
[root@test app]# chown -R oracle:oinstall logminer
重新啟動資料庫:
SQL> startup
ORACLE instance started.
Total System Global Area 775946240 bytes
Fixed Size 2023944 bytes
Variable Size 281021944 bytes
Database Buffers 486539264 bytes
Redo Buffers 6361088 bytes
Database mounted.
Database opened.
建立資料字典檔案
SQL> execute dbms_logmnr_d.build(dictionary_filename=>'sqltrace.ora',dictionary_location=>'/opt/app/logminer');
新增用於分析的日誌檔案
SQL> exec dbms_logmnr.add_logfile(logfilename=>'/opt/app/oracle/flash_recovery_area/ORCL/archivelog/2008_09_05/o1_mf_1_73_4d18b84j_.arc',options=>dbms_logmnr.new);
PL/SQL procedure successfully completed.
SQL> exec dbms_logmnr.add_logfile(logfilename=>'/opt/app/oracle/flash_recovery_area/ORCL/archivelog/2008_09_05/o1_mf_1_74_4d18hz4h_.arc');
PL/SQL procedure successfully completed.
資料字典分析:
SQL> exec sys.dbms_logmnr.start_logmnr(dictfilename=>'/opt/app/logminer/dictionary.ora');
PL/SQL procedure successfully completed.
以下的分析結果和我預期結果不一致,原因是我的資料庫是10G版本,預設設定只能夠顯示DDL語言,針對這個問題,我上面轉載了《yangtingkun》的一篇測試文章來說明。
SQL> select t.scn,t.TIMESTAMP,t.SEG_OWNER,t.OPERATION,t.SQL_REDO,t.SQL_UNDO from v$logmnr_contents t where t.SEG_NAME='APPLE';
SCN TIMESTAMP SEG_OWNER
---------- -------------- --------------------------------
OPERATION
--------------------------------
SQL_REDO
--------------------------------------------------------------------------------
SQL_UNDO
--------------------------------------------------------------------------------
904895 05-9ÔÂ -08 SYS
DDL
create table apple (a int);
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/8334342/viewspace-442216/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 玩轉SVN-版本回退
- 玩轉SVN-建立版本庫
- 一起玩轉玩轉LiteOS元件:TinyFrame元件
- 誰有jive2。0以前的版本?
- 玩轉 React(一)- 前言React
- [譯] 玩轉ptrace (一)
- 用 Golang 重構了下自己站 (以前 Laravel 版本)GolangLaravel
- 分析物件DBMS_UTILITY.ANALYZE_SCHEMA(8i以前版本)物件
- Power Point 2003 的問題:有時打不開以前版本的PPT檔案(轉)
- 使用VSCode玩轉JAVA(一)VSCodeJava
- 一文玩轉 WebDriver APIWebAPI
- 轉:資料中心備份的十三種最佳做法
- 帶你玩轉 Vite + Vue3 高低版本常用玩法ViteVue
- MAXLOGFILES應該以前的版本就能自動擴充套件套件
- mfc版本及其對應vc版本一覽表 (轉)
- win10如何回退到較早版本 win10系統怎麼回退以前的版本Win10
- 玩轉webpack系列之webpack核心概念(一)Web
- 一分鐘玩轉 Spring IoCSpring
- 一分鐘玩轉 Spring IoC!Spring
- 一起玩轉微服務(1)——概念微服務
- 玩轉 iOS 開發:NSURLSession 講解 (一)iOSSession
- 一道以前看過的面試題面試題
- 以前學習sql的一點總結SQL
- 玩轉redisRedis
- 玩轉 pyocd
- 玩轉「Canvas」Canvas
- 玩轉macMac
- 玩轉TCPTCP
- 玩轉RecyclerViewView
- 玩轉cordova
- 玩轉wordpress
- Flutter版本的玩Android完整版本(終結)FlutterAndroid
- 一起玩轉微服務(7)——單一職責微服務
- Nacos釋出0.5.0版本,輕鬆玩轉動態 DNS 服務DNS
- IBM串列埠線序以及串列埠線的做法(轉)IBM串列埠
- 一起玩轉微服務(12)——揭密starter微服務
- 我們一起來玩轉 Grep 指令
- 一文玩兒轉 Rancher Desktop