A l’installation, Oracle installe un grand nombre d’options. L’installation n’entraîne pas directement l’activation de ces options mais rend possible leur utilisation.
Cet article présente les méthodes pour installer/désinstaller ces options.
SQLPLUS*Plus permet de visualiser les options actives :
Connected to: Oracle Database 12c Enterprise Edition Release 12.1.0.2.0 - 64bit Production With the Partitioning, Real Application Clusters, Automatic Storage Management, OLAP, Advanced Analytics and Real Application Testing options
Ci-dessous, un script pour identifier les options actives (par défaut après l’installation) :
declare -A product_matrix num_rows=8 num_columns=3 product_matrix[1,1]="ASM" product_matrix[1,2]="Automated Storage Management" product_matrix[1,3]="kfon.o" product_matrix[2,1]="DM" product_matrix[2,2]="Oracle Data Mining" product_matrix[2,3]="dmwdm.o" product_matrix[3,1]="DV" product_matrix[3,2]="Database Vault" product_matrix[3,3]="kzvidv.o" product_matrix[4,1]="OLAP" product_matrix[4,2]="Oracle OLAP" product_matrix[4,3]="xsyeolap.o" product_matrix[5,1]="OLS" product_matrix[5,2]="Oracle Label Security" product_matrix[5,3]="kzlilbac.o" product_matrix[6,1]="PART" product_matrix[6,2]="Oracle Partitioning" product_matrix[6,3]="kkpoban.o" product_matrix[7,1]="RAC" product_matrix[7,2]="Real Application Cluster" product_matrix[7,3]="kcsm.o" product_matrix[8,1]="RAT" product_matrix[8,2]="Real Application Testing" product_matrix[8,3]="kecwr.o" cd $ORACLE_HOME/rdbms/lib ar -t libknlopt.a > /tmp/check_components.txt for ((i=1;i<=num_rows;i++)) do typeset -i component=$( grep "${product_matrix[$i,3]}" /tmp/check_components.txt | wc -l ) if [ ${component} -eq 1 ]; then printf "%-40s %10s %10s \n" "${product_matrix[$i,1]} (${product_matrix[$i,2]})" "${product_matrix[$i,3]}" ON else printf "%-40s %10s %10s \n" "${product_matrix[$i,1]} (${product_matrix[$i,2]})" "${product_matrix[$i,3]}" OFF fi done echo
Le résultat de l’exéuction du script sur un environnement cluster :
ASM (Automated Storage Management) kfon.o OFF DM (Oracle Data Mining) dmwdm.o ON DV (Database Vault) kzvidv.o OFF OLAP (Oracle OLAP) xsyeolap.o ON OLS (Oracle Label Security) kzlilbac.o OFF PART (Oracle Partitioning) kkpoban.o ON RAC (Real Application Cluster) kcsm.o ON RAT (Real Application Testing) kecwr.o ON
Remarque :
– L’option ASM apparaît désactivée, parce qu’elle est associée aux binaires de la Grid Infrastructure.
Dans un premier temps, nous allons désactiver les options aux niveaux des binaires avec l’outil CHOPT.
# chopt usage: chopt <enable|disable> <option> options: dm = Oracle Data Mining RDBMS Files olap = Oracle OLAP partitioning = Oracle Partitioning rat = Oracle Real Application Testing e.g. chopt enable rat
Pour désactiver les options, il faut utiliser l’outil CHOPT de la manière suivante :
[oracle lib]$ chopt disable dm Writing to /u01/app/oracle/product/12.1.0.2/dbhome_1/install/disable_dm.log... /usr/bin/make -f /u01/app/oracle/product/12.1.0.2/dbhome_1/rdbms/lib/ins_rdbms.mk dm_off ORACLE_HOME=/u01/app/oracle/product/12.1.0.2/dbhome_1 /usr/bin/make -f /u01/app/oracle/product/12.1.0.2/dbhome_1/rdbms/lib/ins_rdbms.mk ioracle ORACLE_HOME=/u01/app/oracle/product/12.1.0.2/dbhome_1 [oracle lib]$ chopt disable olap Writing to /u01/app/oracle/product/12.1.0.2/dbhome_1/install/disable_olap.log... /usr/bin/make -f /u01/app/oracle/product/12.1.0.2/dbhome_1/rdbms/lib/ins_rdbms.mk olap_off ORACLE_HOME=/u01/app/oracle/product/12.1.0.2/dbhome_1 /usr/bin/make -f /u01/app/oracle/product/12.1.0.2/dbhome_1/rdbms/lib/ins_rdbms.mk ioracle ORACLE_HOME=/u01/app/oracle/product/12.1.0.2/dbhome_1 [oracle lib]$ chopt disable partitioning Writing to /u01/app/oracle/product/12.1.0.2/dbhome_1/install/disable_partitioning.log... /usr/bin/make -f /u01/app/oracle/product/12.1.0.2/dbhome_1/rdbms/lib/ins_rdbms.mk part_off ORACLE_HOME=/u01/app/oracle/product/12.1.0.2/dbhome_1 /usr/bin/make -f /u01/app/oracle/product/12.1.0.2/dbhome_1/rdbms/lib/ins_rdbms.mk ioracle ORACLE_HOME=/u01/app/oracle/product/12.1.0.2/dbhome_1 [oracle lib]$ chopt disable rat Writing to /u01/app/oracle/product/12.1.0.2/dbhome_1/install/disable_rat.log... /usr/bin/make -f /u01/app/oracle/product/12.1.0.2/dbhome_1/rdbms/lib/ins_rdbms.mk rat_off ORACLE_HOME=/u01/app/oracle/product/12.1.0.2/dbhome_1 /usr/bin/make -f /u01/app/oracle/product/12.1.0.2/dbhome_1/rdbms/lib/ins_rdbms.mk ioracle ORACLE_HOME=/u01/app/oracle/product/12.1.0.2/dbhome_1
L’execution du script permet de vérifier la désactivation des options :
ASM (Automated Storage Management) kfon.o OFF DM (Oracle Data Mining) dmwdm.o OFF DV (Database Vault) kzvidv.o OFF OLAP (Oracle OLAP) xsyeolap.o OFF OLS (Oracle Label Security) kzlilbac.o OFF PART (Oracle Partitioning) kkpoban.o OFF RAC (Real Application Cluster) kcsm.o ON RAT (Real Application Testing) kecwr.o OFF
L’outil CHOPT automatise le relink des librairies. Pour d’autres options, il est nécessaire d’effectuer l’opération manuellement.
Pour activer/désactiver l’option RAC :
cd $ORACLE_HOME/rdbms/lib make -f ins_rdbms.mk rac_on ioracle / make -f ins_rdbms.mk rac_off ioracle
Remarque : RAC est une option « Database », il est possible d’installer des binaires Database Standalone dans un environnement Clusterware (partage du stockage, Cold Cluster Failover).
Pour activer/désactiver le protocol RDS (Reliable Datagram Sockets), notamment sous EXADATA (Infiniband) :
cd $ORACLE_HOME/rdbms/lib make -f ins_rdbms.mk ipc_rds ioracle / make -f ins_rdbms.mk ipc_udp ioracle
La commande suivante permet de vérifier l’activation du mode RDS :
nm ${ORACLE_HOME}/lib/libskgxp11.so | grep rds_enabled
Pour activer/désactiver Direct NFS :
make -f ins_rdbms.mk dnfs_on / make -f ins_rdbms.mk dnfs_off
Il convient de vérifier l’activation du mode dNFS dans le fichier d’alertes de l’instance de base de données après le redémarrage.
Ces opérations sont notamment utiles après le clonage d’un Database Home (qui ne prend pas en compte l’activation de ces options).