ORACLE控制檔案的重建 (轉)

gugu99發表於2008-04-27
ORACLE控制檔案的重建 (轉)[@more@]執行一段時間後有很多引數需要調整,有些引數可在$_HOME/s/initXXX.ora中調整,而有些引數必須要在ORACLE的控制檔案中調整。如ORACLE的預設資料檔案個數為30個,在系統需要擴表空間而資料檔案個數不夠時就需要進行調整。
一種方法是將所有資料全倒出來,重建庫,再將資料倒進出。這種方法較麻煩。
二種方法是隻重建控制檔案,因為資料檔案個數的限制引數存放在控制檔案中。
以下是一種較好的重建控制檔案的方法:
1. 資料庫中的資料,以防不測。
2. svrmgrl
3. svrmgrl>connect internal
4. svrmgrl>alter database backup controlfile to trace; 備份控制檔案
5. 在/home/oracle//admin/ora7/udump下可找到最新生成的TRACE檔案,假設為ora_15269.trc,此檔案就包含了當前控制檔案的引數及生成語法。
6. 提取ora_15269.trc中有關控制檔案生成的語句另存為creatctl.。
7. creatctl.sql的內容為:
  STARTUP NOMOUNT
CREATE CONTROLFILE REUSE DATABASE "ORA7" NORESETLOGS NOARCHIVELOG
  MAXLOGFILES 32
  MAXLOGMEMBERS 2
  MAXDATAFILES 50
  MAXINSTANCES 8
  MAXLOGHISTORY 800
LOGFILE
GROUP 1 '/dev/vg00/roraredoa1'  SIZE 500K,
GROUP 2 '/dev/vg00/roraredoa2'  SIZE 500K,
  GROUP 3 '/dev/vg00/roraredoa3'  SIZE 500K
DATAFILE
  '/dev/vg00/rorasys',
  '/dev/vg00/rorarbs',
  '/dev/vg00/roratemp',
  '/dev/vg00/roratools',
  '/dev/vg00/rorauser'

8. 可按自己的需要編輯creatctl.sql中的引數,如maxdatafiles、maxinstances等。
9. svrmgrl
10. svrmgrl>connect internal
11. svrmgrl>shutdown immediate
12. svrmgrl>@creatctl.sql
13. svrmgrl>alter database open;
此時資料庫已按新的引數執行。

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

相關文章