Oracle恢復管理之重要參數DBID

                             **Oracle恢復管理之重要參數DBID**

DBID,是數據庫標識符。每個數據庫都擁有一個編號,稱爲數據庫標識符(DBID).該編號是在創建數據庫時自動生成的,且Oracle不保證兩個同名的數據庫的DBID必然唯一的。所以Oracle提供$oracle_home/bin/nid命令,該命令能夠在修改數據庫名的同時自動生成新的DBID。在創建數據庫之後,DBID一般都是不會變的,除非使用命令nid修改。

下面是查詢DBID的方法:
1.查詢v$DATABASE.DBID字段
在數據庫正常工作時,查詢v$database.DBID字段是獲取DBID的最簡單方法,此方法必須先將實例至少啓動至MOUNT狀態。

SQL> select dbid from v$database;

2.查看控制文件自動備份的文件名
通過控制文件自動備份的文件名獲取,前提條件是沒有利用快速恢復區放置自動備份
確認是否使用快速恢復區,查詢語句(即db_recovery_file_dest參數爲空):

SQL > show parameter db_recovery_file_dest

打開控制文件自動備份功能:
RMAN>configure controlfile autobackup on;

根據默認設置,控制文件自動備份的路徑爲¥oracle_home/dbs目錄。備份文件的格式爲c-<DBID>-<YYYYMMDD>-<CC>,最後的<CC>代表一天中第幾次(十六進制)備份。發起備份,然後觀察控制文件自動備份的文件名,留意"Starting Control File and SPFILE Autobackup at"
4.3.執行相應的轉儲命令,查看數據庫各種文件的頭部
利用"alter system dump logfile"命令轉儲某個歸檔日誌至當前會話的追蹤文件:
獲取當前的會話跟蹤文件的路徑:
SQL> select value from v$diag_info where name='Default Trace File';

SQL> alter system dump logfile '/home/oracle/1_218_748028104.dbf';

根據查找出來的追蹤文件,通過grep命令,過濾出'db id'
grep -i 'db id' /u01/app/oracle/diag/rdbms/br/br/trace/br_ora_5301.trc

4.啓用了恢復編錄,通過查詢恢復編錄中的名爲DB的表
使用編錄方法,暫時不介紹,以後單獨一篇文章來說。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章