Je veux arrêter un nœud dans le Rac. J'ai fait les étapes suivantes:
Instance de base de données d'arrêt
export Oracle_SID=mydb1
sqlplus / as sysdba
shutdown immediate;
arrêter l'instance ASM
. oraenv
+ASM1
sqlplus / as sysasm
shutdown immediate;
Mais montre l'erreur suivante: ORA-15097: cannot SHUTDOWN ASM instance with connected client
S'il vous plaît, dites-moi quelles mesures dois-je faire pour arrêter tous les services et instances sur le serveur qui fait partie du RAC?
J'ai trouvé la solution.
--------------------------------------Éteindre
---------- Information de la base de données d'arrêt d'abord
$. oraenv
>mydb1
>/u01/app/Oracle/product/11.2.0/db_1
$sqlplus / as sysdba
SQL> shutdown immediate;
---------- ARRÊTER Oracle Clusterware, il va arrêter l'instance ASM elle-même
$ su -
# cd /u01/app/11.2.0/grid/bin/
# ./crsctl stop crs
--------------------------------------Commencer
$ su -
# cd /u01/app/11.2.0/grid/bin/
# ./crsctl start crs
. oraenv
>mydb1
>/u01/app/Oracle/product/11.2.0/db_1
$sqlplus / as sysdba
SQL> startup;
Notez qu'après le redémarrage du serveur, l'instance ASM peut (devrait) être démarrée automatiquement.
Disclaimer: pas un dba oracle
Utilisez srvctl
, le programme de contrôle de la grille qui vous permet de manipuler des parties du cluster RAC
Usage: srvctl <command> <object> [<options>]
commands: enable|disable|start|stop|relocate|status|add|remove|modify|getenv|setenv|unsetenv|config
objects: database|instance|service|nodeapps|vip|asm|diskgroup|listener|srvpool|server|scan|scan_listener|oc4j|home|filesystem|gns
For detailed help on each command and object and its options use:
srvctl <command> -h or
srvctl <command> <object> -h
Exemples
srvctl stop database -d mydb
srvctl stop instance -i mydb1
Veuillez vous procurer un expert pour les exécuter, surtout que vous voulez faire quelque chose avec ASM. Si je me souviens, ASM est un système de fichiers Oracle exclusif. Utiliser srvctl
serait mieux que d'essayer de le gérer vous-même.
Voici plus d'aide sur srvctl
$ srvctl stop database -h
Stops the database.
Usage: srvctl stop database -d <db_unique_name> [-o <stop_options>] [-f]
-d <db_unique_name> Unique name for the database
-o <stop_options> Options to shutdown command (e.g. normal, transactional, immediate, or abort)
-f Force stop
-h Print usage
$ srvctl stop instance -h
Stops the database instance.
Usage: srvctl stop instance -d <db_unique_name> {-n <node_name> | -i <inst_name_list>} [-o <stop_options>] [-f]
-d <db_unique_name> Unique name for the database
-n <node_name> Node name
-i "<inst,...>" Comma separated instance names
-o <stop_options> Options to shutdown command (e.g. normal, transactional, immediate, or abort)
-f Force stop
-h Print usage
$ srvctl stop asm -h
Stops ASM instance.
Usage: srvctl stop asm [-n <node_name>] [-o <stop_options>] [-f]
-n <node_name> Node name
-o <stop_options> Options to shutdown command (e.g. normal, transactional, immediate, or abort)
-f Force stop
-h Print usage
$
Ceci est un bogue qui est fixé en 11.2.0.3. Jetez un coup d'œil au bogue # 9897335. Si vous avez un contrat de support, vous pouvez demander une backort si elle est réalisable. De plus, l'erreur vous dit quel client il attend. De plus amples informations peuvent être récupérées de V $ ASM_CLIENT.