前言
本文主要給大家介紹的是關于Oracle 10g利用amdu抽取數據文件的相關內容,下面話不多說了,來一起看看詳細的介紹吧
環境:OEL 5.7 + Oracle 10.2.0.5 RAC
需求:實驗在Oracle 10g環境使用amdu抽取數據庫文件
本文主要目的是介紹3個知識點:
1.使amdu可以在oracle 10g環境中使用
2.使kfed可以在oracle 10g環境中使用
3.amdu如何抽取損壞的ASM磁盤組數據
1.使amdu可以在oracle 10g環境中使用
在Oracle 10g環境,并沒有自帶amdu工具,需要自行去下載:
具體可以參考MOS文檔:
Placeholder for AMDU binaries and using with ASM 10g, 11g, 12c (文檔 ID 553639.1)
> $cd <your directory>> $export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:`pwd` > or $setenv LD_LIBRARY_PATH ${LD_LIBRARY_PATH}:`pwd`> $export PATH=$PATH:`pwd` or setenv PATH ${PATH}:`pwd`> > or > > $cd <your directory>> $export LIBPATH=$LIBPATH:`pwd` > or $setenv LIBPATH ${LIBPATH}:`pwd`> $export PATH=$PATH:`pwd` or setenv PATH ${PATH}:`pwd`
注意:如果是AIX平臺,則對應的是設置LIBPATH環境變量。我這里是Linux,所以設置LD_LIBRARY_PATH環境變量:
unzip /tmp/amdu_X86-64.zip export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:`pwd` export PATH=$PATH:`pwd`
2.使kfed可以在oracle 10g環境中使用
在Oracle 10g環境kfed需要編譯:
ASM tools used by Support : KFOD, KFED, AMDU (文檔 ID 1485597.1)
KFED executable comes with installation from 11.1 onwards; for the older version you must build it.
編譯方法如下:
$cd $ORACLE_HOME/rdbms/lib$make -f ins_rdbms.mk ikfed
3.amdu如何抽取損壞的ASM磁盤組數據
在ASM磁盤組損壞時,如何使用amdu工具來抽取數據庫文件:
How to Restore the Database Using AMDU after Diskgroup Corruption (文檔 ID 1597581.1)
1. Create pfile of lost database , from database alert.log startup messages.2. Startup database in nomount3. Get the controlfile number from db alert log , it will show while starting the database here in this eg. its 256eg., control_files='+DATA/orcl/controlfile/current.256.709676643'If you have controlfile backup already in non-asm location edit the pfile to point to location of non-asm and then mount the databaseIf you dont have controlfile backup then go to step 4 after determining the file# from step 34. $ amdu -diskstring <asm_diskstring> -extract DATA.2565. shutdown the database and change the control_file location to point to the extracted file location6. startup mount the database7. once mounted, get the datafile file numbers using "select name from v$datafile" And get online redo logfile from "select * from v$logfile".8. Extract all datafiles and redolog files in similar manner9. alter database rename <datafile 1> to < newly extracte location>10. open the database
實際可以做實驗去驗證下MOS這個步驟的可行性:
1.創建參數文件
2.啟動數據庫到nomount狀態
3.獲取到控制文件的number
4.抽出控制文件
5.關閉數據庫,修改control_file值
6.啟動數據庫到mount狀態
7.獲取到數據文件、日志文件的number
8.抽取數據文件和redo日志文件
9.重命名數據庫文件到新位置
10.打開數據庫
總結
以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,如果有疑問大家可以留言交流,謝謝大家對VeVb武林網的支持。
新聞熱點
疑難解答