Oracle数据库的发行版本号(release number)一般由五位数字组成,那么这些数字分别代表什么含义呢?
Major Database Release Number
第一位阿拉伯数字是我们最常提到的一个大版本标识,它代表了数据库主要发行版本号;譬如我们说的10g不管是R1还是R2,其版本号的第一位总是10;不同Major release Number之间预示着存在功能上的巨大差别,例如在11g中加入了许多10g上永远不会有的新特性。新的major release number表明这是崭新一代的产品。
Database Maintenance Release Number
第二位阿拉伯数字代表数据库维护版本发行号,也就是我们常说的R1或者R2。已有的Maintenance Release Number包括:8.1(比较特殊)、9.1、9.2、10.1、10.2和11.1、11.2。从9i开始每一个大版本都有2个release,一般来说R1总是显得不那么稳定(至少11g之前是这样),通过在R1中引入大量特性后发行并根据用户实际使用情况不断修正Bug,到R2发行时R1中引入的新特性已经日渐成熟,当然按照Oracle的风格在R2中还会引入部分特性,一些特性甚至可能是颠覆性的(例如10.2.0.2中引入mutex保护的Cursor pin)。另外值得一提的是R1极不稳定这个铁律似乎在11g中被打破了,11gR1的使用率非常之高,这是9.1或10.1所不能想象的。
Application Server Release Number
第三位阿拉伯数字代表了Oracle Application Server (OracleAS)的发行版本号;对于Oracle database软件而言这一位总是为0
Component-Specific Release Number
第四位阿拉伯数字代表了某个组件的发行版本号。这里说的组件是指我们在使用DBCA创建数据库是选择安装的Component,例如Oracle OLAP、Label Security等(如果是手动创建数据库,那么必然运行了安装组件的脚本,一般位于$ORACLE_HOME/rdbms/admin目录下)取决于数据库上所打过的Component Patch set补丁集或interim release临时版本,同一个数据库中不同组件可能存在不同的组件版本号。实际使用中该组件发行版本号一般被我们用来指代数据库软件或者某个数据库所打过的Patch set补丁集,Patch set补丁集一般都是些大家伙(1-2GB不稀奇)。在给数据库软件打上Patch set后我们需要给已经存在的数据库升级组件版本,通俗地说是给数据库升级数据字典,这样数据库内的组件版本一般是一致的,如我将一个10.2.0.1的数据库升级到10.2.0.4,那么这个数据库里的组件版本也会是10.2.0.4(不排除说你为某个组件打了特殊的Patch后造成这个组件的版本独树一帜,当然这很少见,也不推荐)。我们可以通过查询DBA_SERVER_REGISTRY视图来了解数据库中的组件版本情况:
desc dba_server_registry; Name Null? Type —————————————– ——– —————————- COMP_ID NOT NULL VARCHAR2(30) COMP_NAME VARCHAR2(255) . . . → Read More: 了解Oracle数据库的版本号
最新评论