Pour automatiser l’arrêt et le démarrage des instances Oracle d’une machine…
1. Script de démarrage et d’arrêt
Créer le fichier /etc/rc.d/init.d/oracle9i avec le code ci-dessous :
#!/bin/sh # Donnez a ORA_HOME une valeur equivalente au ORACLE_HOME # ou sont places les fichiers dbstart et dbshut. # # ORA_OWNER est l'utilisateur Linux proprietaire # des fichiers des bases Oracle ORA_HOME=/u01/app/oracle/product/8.1.6 ORA_OWNER=oracle case "$1" in 'start') # Start the Oracle databases: # The following command assumes that the oracle login will not prompt the # user for any values echo -n "Starting Oracle8i Release 2: " su - $ORA_OWNER -c $ORA_HOME/bin/dbstart touch /var/lock/subsys/oracle8i echo ;; 'stop') # Stop the Oracle databases: # The following command assumes that the oracle login will not prompt the # user for any values echo -n "Shutting down Oracle8i Release 2: " su - $ORA_OWNER -c $ORA_HOME/bin/dbshut rm -f /var/lock/subsys/oracle8i echo ;; 'restart') # Restart the Oracle databases: echo -n "Retarting Oracle8i Release 2: " $0 stop $0 start echo ;; *) echo "Usage: oracle8i { start | stop | restart }" exit 1 esac exit 0
Ensuite, bien penser à modifier les droits du fichier.
2. Pour tester
# cd /etc/rc.d/init.d # ./oracle8i stop # ./oracle8i start # ./oracle8i restart
3. Créer les liens qui vont bien
$ su - # ln -s /etc/rc.d/init.d/oracle8i /etc/rc.d/rc0.d/K10ora # ln -s /etc/rc.d/init.d/oracle8i /etc/rc.d/rc6.d/K10ora ; on peut aussi ajouter le lien : # ln -s /etc/rc.d/init.d/oracle8i /etc/rc.d/rc3.d/S99ora