控制文件中的 MAXDATAFILES 参数
出自:http://www.linuxso.com/sql/18319.html
控制文件中的 MAXDATAFILES 參數
有關Oracle 的控制文件說明,參考我之前的Blog:
Oracle 控制文件
http://blog.csdn.net/tianlesoftware/article/details/4974440
?
在Oracle 的控制文件中有一個參數:MAXDATAFILES,其用來控制數據庫最大支持的datafile?的個數。在使用DBCA 創建實例時可以修改這個參數。
?
也可以通過dump 控制文件來查看這個參數:
?SQL> oradebug?setmypid
Statement processed.
SQL> alter database backup controlfileto trace;
Database altered.
SQL> oradebug tracefile_name
d:\app\administrator\diag\rdbms\newccs\newccs\trace\newccs_ora_6960.trc
?
trace 里的內容:
CREATE CONTROLFILE REUSE DATABASE"NEWCCS" RESETLOGS? ARCHIVELOG
???MAXLOGFILES 16
???MAXLOGMEMBERS 3
??? MAXDATAFILES 100
???MAXINSTANCES 8
MAXLOGHISTORY292
--這里的100 是控制文件中的默認值
?
?
二.DB_FILES 參數
Oracle 11gR2 上對這個參數的說明:
http://docs.oracle.com/cd/E11882_01/server.112/e25513/initparams057.htm
?
?
| Property | Description |
| Parameter type | Integer |
| Default value | 200 |
| Modifiable | No |
| Range of values | Minimum: the largest among the absolute file numbers of the datafiles in the database Maximum: operating system-dependent |
| Basic | No |
| Oracle RAC | Multiple instances must have the same value. |
?
DB_FILES?specifies the maximum numberof database files that can be opened for this database. The maximum valid valueis the maximum number of files,?subject to operating system constraint, thatwill ever be specified for the database, including files to be addedby?ADD DATAFILE?statements.
--DB_FILES 參數指定數據庫能打開的最大的datafiles 的數量,這個最大值也會受操作系統的限制。
?
If you increasethe value of?DB_FILES, then you must shut down and restart all instancesaccessing the database before the new value can take effect. If you have aprimary and standby database, then they should have the same value for thisparameter.
--如果我們增加DB_FILES 的值,那么必須重啟instance,才能讓修改生效。 如果是DG 環境,也需要保證主備庫參數一致。
?
?????? 在Oracle 11gR2 中,這個參數的默認值是200,比控制文件的默認值大。
?
三.控制文件中的 MAXDATAFILES 和 DB_FILES 關系
MOS 文檔:kccrsz:?expanded controlfile message in"alert.log" [ID 101020.1]
?
?
Problem Description
-------------------
?
The "alert.log" file shows thefollowing message:
???kccrsz: expanded controlfile section 4 from 17 to 18 records
???????????number of logical blocks in section remains at 2
???Completed: alter tablespace tb1 add datafile
?
?
Solution Description
--------------------
?
Starting inOracle8 the controlfile is automatically expanded. A new datafile is addedbeyond the maxdatafiles limited specified in the control file.?
--從Oracle 8 開始,控制文件是自動擴展的,當新添加的datafile時,datafile的個數超過了控制空maxdatafiles 參數的限制時,maxdatafiles參數值會自動的增加。
--這個驗證可以通過dump?控制文件來查看
?
This alsohappens if new records are added to the "log_history" section of thecontrol files and there are no entries that could be replaced.?
--控制文件的自動擴展也發生在的section 不夠時。
?
The routine thatperforms the expansion?writes this message to the alert log. The messagesspecifies the section that was expanded and the amount of the expansion. Pleasenote that this message cannot be turned off.
--執行擴展操作時會往alert log 里寫一些log 信息,就是上面部分的內容,這部分內容列出了擴展的section和擴展的數量,這個顯示信息不能被關閉。
?
The automatic expansion only occurs up to the limit of the "init.ora" parameter "DB_FILES".
???????--注意,控制文件中的自控擴展的datafile 的最大值就是我們DB_FILES 參數的值。 所以這也是我們之前看的,DB_FILES 參數值比控制文件中默認值大的原因。
?
?
?
總結一下:
?????? 數據庫中真正的最大的datafiles 的個數由DB_FILES 參數決定,雖然控制文件中也有限制,但是這個控制文件中的限制參數會自動的增加,直到到達DB_FILES的值。
?
?
與50位技術專家面對面20年技術見證,附贈技術全景圖總結
以上是生活随笔為你收集整理的控制文件中的 MAXDATAFILES 参数的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: sqlplus中利用spool生成带日期
- 下一篇: user_all_tables,user