錯誤新增表空間的資料檔案

hunterjoy發表於2010-06-29

       最近,客戶說查詢機(環境為HP-UX+ORACLE9.2.0.7)的報警日誌上顯示資料檔案中資料塊損壞,請求處理。經過檢視報警日誌,發現這個資料檔案idx03.dat中有多個資料塊損壞。由於這個查詢機的資料是透過物化檢視從生產機上重新整理過來的,對查詢機沒有做備份,因此無法使用RMAN的BLOCK RECOVER或RECOVER DATAFILE.因此只能OFFLINE DROP 該檔案,再重新建立一個檔案。

        注:alter database datafile 'idx03.dat' offilne drop;

        透過dba_data_files表檢視得知,這個檔案在索引表空間IDX下。

        向表空間新增檔案:

       1>建立裸裝置檔案

       2>建軟連線,名稱為idx04.dat

       3>向表空間新增資料檔案

       向表空間新增資料檔案時,將idx04.dat檔案新增到資料表空間DATA中。建立完後發現錯了,應該新增到索引表空間IDX中。如何將idx04.dat再新增到索引表空間IDX中?

   1>檢查新新增的資料檔案idx04.dat中有沒有資料

       select * from dba_data_files

       select * from dba_extents a where a.file_id=7

   在沒有資料的情況下可以做如下操作:

   2>透過dd命令,備份idx04.dat對應的裸裝置檔案(r04.dat),起名字為(r14.dat)

    3>將r14.dat建立軟連線為data14.dat

    4>在資料庫mount下

         alter database rename file 'idx04.dat' to 'data14.dat'

    5>開啟資料庫

          alter database open;

     6>向表空間新增資料檔案

          alter tablespace IDX add datafile 'idx04.dat' .

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

相關文章