Chinaunix首页 | 论坛 | 博客
  • 博客访问: 6814807
  • 博文数量: 1662
  • 博客积分: 16831
  • 博客等级: 上将
  • 技术积分: 12554
  • 用 户 组: 普通用户
  • 注册时间: 2011-02-25 07:23
个人简介

柔中带刚,刚中带柔,淫荡中富含柔和,刚猛中荡漾风骚,无坚不摧,无孔不入!

文章分类

全部博文(1662)

文章存档

2021年(8)

2020年(24)

2019年(4)

2018年(19)

2017年(66)

2016年(60)

2015年(49)

2014年(201)

2013年(221)

2012年(638)

2011年(372)

分类: Oracle

2012-02-07 09:39:42

Oracle 控制文件中MAXDATAFILES, DB_FILES 参数 与 数据库最大datafiles 关系说明
分类: Oracle 高级知识 136人阅读 评论(0) 举报

 

 

一.控制文件中的 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 上对这个参数的说明:

 

 

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的值。

阅读(907) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~