【故障處理】通過重建資料庫物件解決因EXPDP/IMPDP工具損壞無法使用問題

secooler發表於2010-06-14
EXPDP/IMPDP是非常高效的資料庫邏輯備份與恢復工具,突然有一天如果這兩個工具損壞了,無法使用,該如何是好呢?
在最極端的情況下我們也可以通過重建的方法來解決問題。
具體的恢復步驟如下,該過程已在Oracle 11gR2驗證,供參考。

1.以SYS身份登入到資料庫
secooler@secDB /home/oracle$ sqlplus / as sysdba

SQL*Plus: Release 11.2.0.1.0 Production on Sun Jun 14 22:52:02 2010

Copyright (c) 1982, 2009, Oracle.  All rights reserved.


Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production
With the Partitioning, Oracle Label Security, OLAP, Data Mining,
Oracle Database Vault and Real Application Testing options

sys@11gR2>

2.使用Catdph.sql指令碼重建資料泵的TYPES和VIEWS
sys@11gR2> @$ORACLE_HOME/rdbms/admin/catdph.sql

3.如果安裝了XDB,需要執行指令碼catmetx.sql
sys@11gR2> @$ORACLE_HOME/rdbms/admin/catmetx.sql

4.使用prvtdtde.plb指令碼重建tde_library包
sys@11gR2> @$ORACLE_HOME/rdbms/admin/prvtdtde.plb

5.使用Catdpb.sql指令碼重建DataPump包
sys@11gR2> @$ORACLE_HOME/rdbms/admin/catdpb.sql

6.使用Dbmspump.sql指令碼重建DataPump物件
sys@11gR2> @$ORACLE_HOME/rdbms/admin/dbmspump.sql

7.如果有無效的資料庫物件,重新編譯之
sys@11gR2> @$ORACLE_HOME/rdbms/admin/utlrp.sql

8.小結
通過如上幾個步驟,我們便完成了EXPDP/IMPDP工具的重建的工作,如果在重建的過程中沒有出現其他問題,可以說我們成功挽救了EXPDP/IMPDP,生命得以延續~~
BTW:如果是Oracle 10gR1版本,重建僅需要執行兩個指令碼:catdp.sql和dbmspump.sql。

Good luck.

secooler
10.06.14

-- The End --

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/519536/viewspace-665720/,如需轉載,請註明出處,否則將追究法律責任。

相關文章