轉:LogMiner安裝和使用的一些心得
http://blog.chinaunix.net/u/25565/showart_200455.html
LogMiner是Oracle公司從產品8i以後提供的一個實際非常有用的分析工具,使用該工具可以輕鬆獲得Oracle重作日誌檔案(歸檔日誌檔案)中的具體內容,特別是,該工具可以分析出所有對於操作的DML(insert、update、delete等)語句,另外還可分析得到一些必要的回滾語句。該工具特別適用於除錯、審計或者回退某個特定的事務。
總的說來,LogMiner工具的主要用途有:
1. 跟蹤的變化:可以離線的跟蹤的變化,而不會影響線上系統的效能。
2. 回退的變化:回退特定的變化資料,減少point-in-time recovery的執行。
3. 最佳化和擴容計劃:可透過分析日誌檔案中的資料以分析資料增長模式。
下面簡單介紹LogMiner的安裝及使用,我的環境是WIN2000+ORACLE10R2。
要安裝LogMiner工具,必須首先要執行下面這樣兩個指令碼,這兩個指令碼必須均以SYS使用者身份執行。其中第一個指令碼用來建立DBMS_LOGMNR包,該包用來分析日誌檔案。第二個指令碼用來建立DBMS_LOGMNR_D包,該包用來建立資料字典檔案。
1..$ORACLE_HOME/rdbms/admin/dbmslm.sql 2. $ORACLE_HOME/rdbms/admin/dbmslmd.sql.
SQL> conn sys/sg1980@sgtest2 as sysdba
已連線。
SQL> @d:\oracle\product\10.2.0\db_2\RDBMS\ADMIN\dbmslm.sql
程式包已建立。
授權成功。
SQL> @d:\oracle\product\10.2.0\db_2\RDBMS\ADMIN\dbmslmd.sql
程式包已建立。
使用LogMiner工具
1、建立資料字典檔案(data-dictionary)
資料字典檔案是一個文字檔案,使用包DBMS_LOGMNR_D來建立。如果我們要分析的資料庫中的表有變化,影響到庫的資料字典也發生變化,這時就需要重新建立該字典檔案。另外一種情況是在分析另外一個資料庫檔案的重作日誌時,也必須要重新生成一遍被分析資料庫的資料字典檔案。
在ORACLE8I的時候,首先在init.ora初始化引數檔案中,指定資料字典檔案的位置,也就是新增一個引數UTL_FILE_DIR,該引數值為伺服器中放置資料字典檔案的目錄。如:
UTL_FILE_DIR = (e:\Oracle\logs)
ORACLE9I後,推薦使用SPFILE啟動,可以動態調整引數;
SQL> show parameter spfile
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
spfile string D:\ORACLE\PRODUCT\10.2.0\DB_2\
DATABASE\SPFILESGTEST2.ORA
SQL> alter system set utl_file_dir='d:\oracle\logs' scope=spfile;
系統已更改。
SQL> startup force
ORACLE例程已經啟動。
Total System Global Area 289406976 bytes
Fixed Size 1248600 bytes
Variable Size 96469672 bytes
Database Buffers 188743680 bytes
Redo Buffers 2945024 bytes
資料庫裝載完畢。
資料庫已經開啟。
SQL> show parameter utl_file_dir
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
utl_file_dir string d:\oracle\logs
然後建立資料字典檔案
SQL> @d:\dbms_logmnr_d.build.txt
PL/SQL過程已成功完成。
指令碼dbms_logmnr_d.build.txt
BEGIN
dbms_logmnr_d.build(
dictionary_filename => 'logminer_dict.dat',
dictionary_location => 'd:\oracle\logs');
END;
/
2、建立要分析的日誌檔案列表
Oracle的重作日誌分為兩種,線上(online)和離線(offline)歸檔日誌檔案,我這裡主要分析歸檔日誌,線上日誌原理一樣。
A.建立列表
SQL> @d:\dbms_logmnr.add_logfile.txt
PL/SQL過程已成功完成。
指令碼dbms_logmnr.add_logfile.txt
BEGIN
dbms_logmnr.add_logfile(
options => dbms_logmnr.new,
logfilename=> 'D:\oracle\product\10.2.0\flash_recovery_area\SGTEST2\ARCHIVELOG\2006_11_10\O1_MF_1_35_2O7JY3M1_.ARC');
END;
/
B.新增另外的日誌檔案到列表
SQL> @d:\dbms_logmnr.add_logfile2.txt
PL/SQL過程已成功完成。
指令碼dbms_logmnr.add_logfile2.txt
BEGIN
dbms_logmnr.add_logfile(
options => dbms_logmnr.addfile,
logfilename => 'D:\oracle\product\10.2.0\flash_recovery_area\SGTEST2\ARCHIVELOG\2006_11_09\O1_MF_1_34_2O55BFH4_.ARC');
END;
/
注意Options=>dbms_logmnr.new(addfile、removefile)的三個引數,分別是新建、新增、刪除日誌。
3.使用LogMiner進行日誌分析
(1)無限制條件
BEGIN
dbms_logmnr.start_logmnr(
dictfilename => 'd:\oracle\logs\logminer_dict.dat');
END;
/
(2)有限制條件
透過對過程DBMS_ LOGMNR.START_LOGMNR中幾個不同引數的設定(引數含義見表1),可以縮小要分析日誌檔案的範圍。
如何查改過的記錄:
把時間變成秒
SQL>alter session set nls_date_format='YYYY-MM-DD hh24:mi:ss';
SQL> select timestamp,table_name,username,session_info,sql_redo from v$logmnr_contents where table_name='EMP';
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/12778571/viewspace-410226/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- LogMiner的安裝和使用
- 安裝和使用LogMiner工具
- logminer如何安裝配置使用
- grub安裝心得(轉)
- 安裝Linux的五種方法和心得(轉)Linux
- 安裝oracle 的LogMinerOracle
- LogMiner 字典安裝
- LFS (版本6.1.1) 安裝心得(轉)
- 紅旗安裝攻略--RedFlag4.0安裝心得(轉)
- 淺談LogMiner的使用 (轉)
- Solaris 9.0 x86 安裝心得(轉)
- 淺談LogMiner的使用(轉載)
- 用VMWARE 3.0安裝LINUX 的一點心得(轉)Linux
- MPlayer安裝和使用指南(轉)
- cocoaPods安裝的一些問題和具體使用
- Jive安裝的一點心得
- vc++.net 的安裝心得C++
- Gorm 的使用心得和一些常用擴充套件 (一)GoORM套件
- VB程式設計的一些心得 (轉)程式設計
- 理解和使用Oracle 8i分析工具-LogMiner(轉)Oracle
- RedHat Enterprise AS4 硬碟安裝心得(轉)Redhat硬碟
- CVSNT在Windows下的安裝和使用(轉)Windows
- RedHat上SSH2的安裝和使用(轉)Redhat
- ubuntu 18.04下git的安裝和一些入門使用UbuntuGit
- Go的安裝和使用Go
- yarn的安裝和使用Yarn
- CMake的安裝和使用
- azkaban的安裝和使用
- FTP的安裝和使用FTP
- CVS在MAC OSX中的安裝和使用 (轉)Mac
- CreateFileMapping的MSDN翻譯和使用心得 (轉)APP
- 關於團隊建設的一些心得(轉)
- Qt 的一些心得QT
- xp2600 Corp Edition安裝心得與交流(轉)
- GitLab 的安裝和使用Gitlab
- Python的安裝和使用Python
- webpack的安裝和基本使用Web
- geoserver PostGIS的安裝和使用Server