Arrêter/Démarrer automatiquement les bases de données

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

Laisser un commentaire