Installation rapide et en silence d'Oracle 12c

C’est un peu une tradition que de trouver la syntaxe la plus courte pour installer une base de données Oracle sans rien d’autre que qu’une ligne de commande… Le RPM oracle-rdbms-server-12cR1-preinstall qui remplit, pour vous, l’ensemble des pré-requis de la version étant disponible pour Linux x86_64, l’installation complete d’un système sur Oracle Linux 6 ne vous prendra pas plus de 30 minutes, temps de téléchargement compris.

En avant pour vos installations rapides et en silence d’Oracle 12c…

Installation

Si vous êtes dans le répertoire de la distribution Oracle, la commande d’installation est la suivante:

export DISTRIB=`pwd`

./runInstaller -silent
-showProgress
-responseFile $DISTRIB/response/db_install.rsp
oracle.install.option=INSTALL_DB_SWONLY
ORACLE_HOME=/u01/app/oracle/product/12.1.0/db_1
ORACLE_BASE=/u01/app/oracle
DECLINE_SECURITY_UPDATES=true
oracle.install.db.DBA_GROUP=dba
oracle.install.db.BACKUPDBA_GROUP=dba
oracle.install.db.DGDBA_GROUP=dba
oracle.install.db.KMDBA_GROUP=dba

Le seul mot clé optionnel dans cette ligne est showProgress. Il permet d’afficher la progression de l’installation. Le reste est nécessaire, au moins dans la version 12.1.0.1. On peut regretter qu’Oracle oblige à positionner les valeurs de tous les groupes et ne prenne pas dba comme valeur par défaut. Dans de nombreux cas, la mise en place d’une séparation des roles et de groupes spécifiques ne sera pas réalisée j’imagine. Et ça me coûte 4 lignes :-(. Pour le reste, ça ressemble beaucoup aux installations d’Oracle 11.2.0.3, le mot clé SECURITY_UPDATES_VIA_MYORACLESUPPORT étant quant à lui, semble-t-il, devenu optionnel lorsque DECLINE_SECURITY_UPDATES est positionné à true.

Voici l’exemple d’une sortie lors d’une installation en mode silencieux :

You can find the log of this install session at:
/u01/app/oraInventory/logs/installActions2013-07-06_02-33-11PM.log

Prepare in progress.
.................................................. 9% Done.

Prepare successful.

Copy files in progress.
.................................................. 16% Done.
.................................................. 22% Done.
.................................................. 27% Done.
.................................................. 32% Done.
.................................................. 37% Done.
.................................................. 42% Done.
.................................................. 47% Done.
.................................................. 52% Done.
.................................................. 57% Done.
.................................................. 62% Done.
.................................................. 67% Done.
.................................................. 72% Done.
.................................................. 77% Done.
.................................................. 82% Done.

Copy files successful.

Link binaries in progress.
..........
Link binaries successful.

Setup files in progress.
........................................
Setup files successful.

Setup Inventory in progress.

Setup Inventory successful.
.................................................. 89% Done.

Finish Setup in progress.
.................................................. 94% Done.

Finish Setup successful.
The installation of Oracle Database 12c was successful.
Please check '/u01/app/oraInventory/logs/silentInstall2013-07-06_02-33-11PM.log' for more details.

As a root user, execute the following script(s):
1. /u01/app/oracle/product/12.1.0/db_2/root.sh


.................................................. 100% Done.
Successfully Setup Software.

Désinstallation

La procédure de désintallation n’est pas plus compliquée à condition que vous ayez supprimé toutes les bases de données liées à votre Home Oracle, il suffit d’utiliser le script ci-dessous :

cd $ORACLE_HOME/deinstall
export DEINSTALL=`pwd`
./deinstall -silent
-paramfile $DEINSTALL/response/deinstall.rsp.tmpl

Le résultat, quant à lui ressemble à ce qui suit :

Checking for required files and bootstrapping ...
Please wait ...
Using properties file /u01/app/oracle/product/12.1.0/db_1/deinstall/response/deinstall.rsp.tmpl
Location of logs /u01/app/oraInventory/logs/

############ ORACLE DEINSTALL & DECONFIG TOOL START ############


######################### CHECK OPERATION START #########################
## [START] Install check configuration ##


Checking for existence of the Oracle home location /u01/app/oracle/product/12.1.0/db_1
Oracle Home type selected for deinstall is: Oracle Single Instance Database
Oracle Base selected for deinstall is: /u01/app/oracle
Checking for existence of central inventory location <complete path of central inventory>
Checking for sufficient temp space availability on node(s) : 'cute.easyteam.fr'

## [END] Install check configuration ##


Network Configuration check config START

Network de-configuration trace file location: /u01/app/oraInventory/logs/netdc_check2013-07-06_02-53-36-PM.log

Network Configuration check config END

Database Check Configuration START

Database de-configuration trace file location: /u01/app/oraInventory/logs/databasedc_check2013-07-06_02-53-37-PM.log

Database Check Configuration END
Oracle Configuration Manager check START
OCM check log file location : /u01/app/oraInventory/logs//ocm_check703.log
Oracle Configuration Manager check END

######################### CHECK OPERATION END #########################


####################### CHECK OPERATION SUMMARY #######################
Oracle Home selected for deinstall is: /u01/app/oracle/product/12.1.0/db_1
Inventory Location where the Oracle home registered is: <complete path of central inventory>
Checking the config status for CCR
Oracle Home exists with CCR directory, but CCR is not configured
CCR check is finished
A log of this session will be written to: '/u01/app/oraInventory/logs/deinstall_deconfig2013-07-06_02-53-05-PM.out'
Any error messages from this session will be written to: '/u01/app/oraInventory/logs/deinstall_deconfig2013-07-06_02-53-05-PM.err'

######################## CLEAN OPERATION START ########################
Database de-configuration trace file location: /u01/app/oraInventory/logs/databasedc_clean2013-07-06_02-53-37-PM.log

Network Configuration clean config START

Network de-configuration trace file location: /u01/app/oraInventory/logs/netdc_clean2013-07-06_02-53-37-PM.log

De-configuring backup files...
Backup files de-configured successfully.

The network configuration has been cleaned up successfully.

Network Configuration clean config END

Oracle Configuration Manager clean START
OCM clean log file location : /u01/app/oraInventory/logs//ocm_clean703.log
Oracle Configuration Manager clean END
Setting the force flag to false
Setting the force flag to cleanup the Oracle Base
Oracle Universal Installer clean START

Detach Oracle home '/u01/app/oracle/product/12.1.0/db_1' from the central inventory on the local node : Done

Delete directory '/u01/app/oracle/product/12.1.0/db_1' on the local node : Done

The Oracle Base directory '/u01/app/oracle' will not be removed on local node. The directory is in use by Oracle Home '/u01/app/oracle/product/12.1.0/db_1'.

Oracle Universal Installer cleanup was successful.

Oracle Universal Installer clean END


## [START] Oracle install clean ##

Clean install operation removing temporary directory '/tmp/deinstall2013-07-06_02-52-29PM' on node 'cute'

## [END] Oracle install clean ##


######################### CLEAN OPERATION END #########################


####################### CLEAN OPERATION SUMMARY #######################
Cleaning the config for CCR
As CCR is not configured, so skipping the cleaning of CCR configuration
CCR clean is finished
Successfully detached Oracle home '/u01/app/oracle/product/12.1.0/db_1' from the central inventory on the local node.
Successfully deleted directory '/u01/app/oracle/product/12.1.0/db_1' on the local node.
Oracle Universal Installer cleanup was successful.

Oracle deinstall tool successfully cleaned up temporary directories.
#######################################################################


############# ORACLE DEINSTALL & DECONFIG TOOL END #############

Vous voilà prêt à déployer quelques milliers de bases Oracle 12c ; si jamais ça n’était pas encore le cas !