怎么检查、启用、禁用 Oracle binary的option?
来源于:
How to Check and Enable/Disable Oracle Binary Options (文档 ID 948061.1)
适用于:
Oracle Database - Enterprise Edition - Version 10.2.0.1 to 12.1.0.2 [Release 10.2 to 12.1]
Other UNIX
目标:
To show how to install/deinstall and/or disable/enable the following database components at the ORACLE_HOME software/binary level:
---注意:install 和enable 是两个层面的概念,只有先install了,才有可能enable
Product/Component | Short Name |
---|---|
Automated Storage Management | ASM |
Context Management Text | CTX |
Oracle Data Mining | DM |
Database Vault | DV |
Oracle OLAP | OLAP |
Oracle Label Security | OLS |
Oracle Partitioning | PART |
Real Application Cluster | RAC |
Real Application Testing | RAT |
This requires advanced skills to make the changes and perform the relink.
This note WILL NOT address product specific scripts that are required at the database level for specific components to further complete the install/deinstall process.
Please refer to the appropriate Oracle Component Guide or as a starting point
Note 472937.1 Information On Installed Database Components and Schemas
Furthermore it will only cover UNIX/LINUX and Windows where applicable covering versions 9.2.0.x through 11.2.0.x.
解决方案:
检查 产品或者组件是否被install(安装)
从11.1.0.7.x开始,在默认情况下,上面所有的产品会被安装,定制化这些产品或者组件是不可行的。
在这些发行版(release)上,进行定制化的唯一方法是:enable or disable 本文涉及到的特定的产品或者组件
从9.2.0.x 到11.1.0.6.x, 安装的产品可以通过如下的方式来确认:
1.使用OUI($ORACLE_HOME/oui/bin or software installation media) :
$ cd <location of OUI> $ ./runInstaller click on "Installed Products" select the ORACLE_HOME click on "Expand All" Review the list or products installed.
2. 使用opatch 工具
$ export PATH=$ORACLE_HOME/OPatch:$PATH $ opatch lsinventory -detail
检查$ORACLE_HOME/.patch_storage/ 或者 $ORACLE_HOME/cfgtoollogs/opatch/lsinv下的log file
关于产品:
Note 783288.1 Oracle Database Software Component Guide for 10gR2
Note 783290.1 Oracle Database Software Component Guide for 11gR1
一旦产品或者组件被确认已经安装(仅仅适用于9.2.0.x 到11.1.0.6.x),那么可以在binary 级别进行enable 或者disable
包含组件enabled 或者disabled状态的文件是:
$ORACLE_HOME/rdbms/lib/libknlopt.a
如下是对$ORACLE_HOME/rdbms/lib/libknlopt.a 解读之后的结果:
Automatic Storage Mgt ON=kfon.o Automatic Storage Mgt OFF=kfoff.o Context Management Text ON=kciwcx.o <<CTX is always enabled and cannot be disabled. Oracle Data Mining ON=dmwdm.o Oracle Data Mining OFF=dmndm.o Oracle Database Vault ON=kzvidv.o Oracle Database Vault OFF=kzvndv.o Oracle OLAP ON=xsyeolap.o Oracle OLAP OFF=xsnoolap.o Oracle Label Security ON= kzlilbac.o Oracle Label Security OFF= kzlnlbac.o Oracle Partitioning ON=kkpoban.o Oracle Partitioning OFF=ksnkkpo.o Real Application Cluster ON=kcsm.o Real Application Cluster OFF=ksnkcs.o Oracle Real Application Testing ON=kecwr.o Oracle Real Application Testing OFF=kecnr.o
$ cd $ORACLE_HOME/rdbms/lib $ ar -tv libknlopt.a For IBM AIX $ cd $ORACLE_HOME/rdbms/lib $ ar -X64 -tv libknlopt.a
样例输出如下:
$ ar -tv libknlopt.a rw-rw-r-- 94110/42424 275432 Sep 17 08:28 2011 kkxwtp.o rw-rw-r-- 94110/42424 46832 Sep 17 07:14 2011 ktd.o rw-r--r-- 503/502 25144 Sep 17 06:20 2011 kxmwsd.o rw-r--r-- 503/502 44056 Sep 17 06:14 2011 kciwcx.o rw-rw-r-- 94110/42424 4040 Sep 17 07:16 2011 sllfls.o rw-rw-r-- 94110/42424 4032 Sep 17 07:16 2011 kprnts.o rw-rw-r-- 94110/42424 5104 Sep 17 07:19 2011 kzvndv.o rw-rw-r-- 94110/42424 4016 Sep 17 06:55 2011 kdzof.o rw-rw-r-- 94110/42424 1512392 Sep 17 07:03 2011 jox.o rw-rw-r-- 503/502 4032 Sep 17 06:05 2011 kecwr.o rw-r--r-- 503/502 6352 Sep 17 06:19 2011 xsyeolap.o rw-r--r-- 503/502 4872 Sep 17 06:14 2011 kzlnlbac.o rw-r--r-- 503/502 4024 Sep 17 06:15 2011 dmwdm.o rw-r--r-- 503/502 4608 Sep 17 05:56 2011 kfoff.o rw-r--r-- 503/502 5272 Sep 17 05:57 2011 ksnkcs.o rw-r--r-- 503/502 4032 Sep 17 06:05 2011 kkpoban.o
检查产品或者组件是否在binary 级别被enable或者disable
$ cd $ORACLE_HOME/rdbms/lib $ ar -t libknlopt.a | grep -c <filename> For IBM AIX $ cd $ORACLE_HOME/rdbms/lib $ ar -X64 -t libknlopt.a | grep -c <filename>
上面的<filename>是:
Product/Component | Short Name | <filename> |
---|---|---|
Automated Storage Management | ASM | kfon.o |
Oracle Data Mining | DM | dmwdm.o |
Database Vault | DV | kzvidv.o |
Oracle OLAP | OLAP | xsyeolap.o |
Oracle Label Security | OLS | kzlilbac.o |
Oracle Partitioning | PART | kkpoban.o |
Real Application Cluster | RAC | kcsm.o |
Real Application Testing | RAT | kecwr.o |
$ ar -t libknlopt.a | grep -c kfon.o For IBM AIX $ ar -X64 -t libknlopt.a | grep -c kfon.o
如果输出是0,表示该option被禁用(disabled)
如果输出是1,表示该option被启用(enable)
怎么在binary级别启用或者禁用产品或者组件?
从9.2.0.x 到 11.2.0.x,上面的产品/组件 可以通过运行make命令来 enable 或者disable 产品或者组件。
在9.2.0.x, 10.1.0.x and 10.2.0.x版本中,从Oracle Database Home中使用"OUI -> Deinstall"来 deinstall 一个特定的组件。
注意:
运行在ORACLE_HOME的所有进程(包括但是不限于database,listener,intelligent agents等等)必须在发出这些命令(make等)之前被关闭。
如下是enable/disable Oracle Partitioning的例子:
Enable ------ $ cd $ORACLE_HOME/rdbms/lib $ make -f ins_rdbms.mk part_on ioracle Disable ------- $ cd $ORACLE_HOME/rdbms/lib $ make -f ins_rdbms.mk part_off ioracle
每个产品/组件的开关如下:
Product/Component | Enable Switch | Disable Switch |
---|---|---|
Automated Storage Management | asm_on | asm_off |
Oracle Data Mining | dm_on | dm_off |
Database Vault | dv_on | dv_off |
Oracle OLAP | olap_on | olap_off |
Oracle Label Security | lbac_on | lbac_off |
Oracle Partitioning | part_on | part_off |
Real Application Cluster | rac_on | rac_off |
Real Application Testing | rat_on | rat_off |
警告:
对ASM的switching 只能在Grid Infrastructure Homes进行,若是在 RDBMS ORACLE_HOME进行,会导致startup失败
从11.2开始,有一个工具chopt,该工具在unix 、linux、windows下都有
数据库需要关闭,才能使用chopt工具来enable,disable binary options
usage: chopt <enable|disable> <option> 举例: Enable -------- $ chopt enable partitioning Disable --------- $ chopt disable partitioning
对11.2版本来说,chopt工具仅仅对下列产品/组件有效:
对于Oracle Database 12.1,只有下面的组件可以被enable/disable
注意:
本文是下列文章的集合:
ote 888934.1 Is it possible to deinstall/remove a specific component from already installed Oracle Database Home using OUI?
Note 1069015.1 How to determine enabled/disabled components in an 11.2 software-only installation
Note 1271072.1 Is it possible to deinstall/remove a specific component from already installed Oracle Database Home using OUI?