程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> Oracle數據庫 >> Oracle數據庫基礎 >> 不為人知的Oracle控制文件重建

不為人知的Oracle控制文件重建

編輯:Oracle數據庫基礎

本章主要是重點介紹Oracle控制文件重建的方法,因為數據庫系統運行一段時間後有很多參數需要調整,有些參數可在$ORACLE_HOME/dbs/initXXX.ora文件中調整,而有些參數必須要在Oracle控制文件中調整。如Oracle缺省數據文件個數為30個,在系統需要擴表空間而數據文件個數不夠時就需要進行調整。

一種方法是將所有數據全倒出來,重建庫,再將數據倒進出。這種方法較麻煩。

二種方法是只重建Oracle控制文件,因為數據文件個數的限制參數存放在控制文件中。

以下是一種較好的重建控制文件的方法:
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.sql。
7. creatctl.sql的內容為: 

  1. STARTUP NOMOUNT   
  2. CREATE CONTROLFILE REUSE DATABASE ORA7 NORESETLOGS NOARCHIVELOG   
  3.     MAXLOGFILES 32   
  4.     MAXLOGMEMBERS 2   
  5.     MAXDATAFILES 50   
  6.     MAXINSTANCES 8   
  7.     MAXLOGHISTORY 800   
  8. LOGFILE   
  9. GROUP 1 '/dev/vg00/roraredoa1'  SIZE 500K,   
  10. GROUP 2 '/dev/vg00/roraredoa2'  SIZE 500K,   
  11.   GROUP 3 '/dev/vg00/roraredoa3'  SIZE 500K   
  12. DATAFILE   
  13.   '/dev/vg00/rorasys',   
  14.   '/dev/vg00/rorarbs',   
  15.   '/dev/vg00/roratemp',   
  16.   '/dev/vg00/roratools',   
  17.   '/dev/vg00/rorauser'   
  18. ;   
8. 可按自己的需要編輯creatctl.sql中的參數,如maxdatafiles、maxinstances等。
9. svrmgrl
10. svrmgrl>connect internal
11. svrmgrl>shutdown immediate
12. svrmgrl>@creatctl.sql
13. svrmgrl>alter database open;
此時數據庫已按新的參數運行。
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved