Spécifier la dépendance entre Instance et ASM

S’il vous arrive d’utiliser srvctl au lieu de dbca et ainsi créer une ressource dans le clusterware Oracle pour des instances de base de données, il est important de noter qu’aucune dépendance n’est créée entre les instances et ASM. Pour vérifier, exécuter la commande ci-dessous:

cd $ORA_CRS_HOME/bin

./crs_stat |grep ".inst"
|cut -d '=' -f 2
| awk '{print "./crs_stat -p",$1,
"|grep -e "^REQUIRED" -e "^NAME""}'
| sh

NAME=ora.RACDB.RACDB1.inst
REQUIRED_RESOURCES=
NAME=ora.RACDB.RACDB2.inst
REQUIRED_RESOURCES=

Pour ajouter ces dépendances, utilisez srvctl modify, comme ci-dessous:

srvctl modify instance -d RACDB  
-i RACDB1 -s +ASM1

srvctl modify instance -d RACDB
-i RACDB2 -s +ASM2

NAME=ora.RACDB.RACDB1.inst
REQUIRED_RESOURCES=ora.rac-server1.ASM1.asm
NAME=ora.RACDB.RACDB2.inst
REQUIRED_RESOURCES=ora.rac-server2.ASM2.asm

Si vous ne configurez pas cette dépendance, il est probable que lors d’un reboot du serveur que l’instance essaiera de démarrer avant ASM et échouera. Il faudra alors vous terminer « à la main! ».