|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||
|
Membre du Club
![]() Inscription : septembre 2005 Messages : 94 ![]() |
Bonjour,
Bon je commence par la première question: si on veut une base en mode RAC sur 2 noeuds etc.. EST-IL OBLIGATOIRE d'être en mode archivelog? (je crois que oui mais je veux être sûr) Question principale: impossible de lancer le 2nd node. Voilà le pb. je pars d'un base mono-machine, récupérée dans un cluster de 2 machines. je restaure les données dans l'ASM à partir du noeud 1 ...Etc mise en place RAC et tout. LE noeud 1 se lance sans pb à partir de Code :
srvctl start instance -d <base> -i <inode> Mais le noeud 2 ...impossible: (les log sont créé su rles 2 parties en 4 groupes sur ASM) Erreurs sur un start database -d <base>.. Partie de l'alert lors du start->mount->shutdown direct Code :
et Shutting down instance: further logons disabled Vous voyez ce qui peut être KO?. Merci d'avance. Laurent |
||
|
|
00
|
|
|
#2 |
|
Membre habitué
![]() Inscription : mai 2007 Messages : 113 ![]() |
RAC est une architecture sécurisée, si une instance tombe, la database tourne tjs, les sessions basculent vers l'instance "alive", ne pas mettre l'archivelog sur un service critique me parait ole ole, mais cela tourne sans si tu le veux.
Pour le reste, essaye de démarrer les instances par la méthode classique, SQL> startup, ensuite tu pourras faire joujou avec srvctl Le raw-device (voir le path dans le fichier sous /etc, je donnerais le nom + tard), doit contenir la définition de toutes les instances pour que srvctl marche. Je serai curieux de voir ton spfile ou pfile, il doit contenir: cluster_database=2 (parametre écrit de mémoire) une serie de INST1.instance_name=INST1 INST2.instance_name=INST2 INST1.undotbs=UNDOTBS1 INST2.undotbs=UNDOTBS2 et d'autre encore des trucs commun *.pga_aggr... *.sga... dsl, pour les parametres, C tjs de mémoire, je travaille par copier/coller As-tu créé les logs et les UNDOs pour la 2eme instance ? alter database add logfile group 4 '....' thread 2 (de mémoire aussi) et surtout : alter database enable thread 2 ; Bref, on risque de discuter pendant un moment sur le sujet... A+ |
|
|
00
|
|
|
#3 |
|
Membre du Club
![]() Inscription : septembre 2005 Messages : 94 ![]() |
Merci,
je vais voir ça , je repasse vous dire si c'est ok. |
|
|
00
|
|
|
#4 |
|
Membre habitué
![]() Inscription : mai 2007 Messages : 113 ![]() |
Voila les paramètres spécifiques à RAC :
*.db_name='<DATABASE>' Name of the database *.cluster_database_instances=2 Number of instance in the cluster *.cluster_database=TRUE Cluster <INSTANCE1>.thread=1 Numbering of instances <INSTANCE2>.thread=2 <INSTANCE1>.undo_tablespace='UNDOTBS1' Specifie UNDO tablespace <INSTANCE2>.undo_tablespace='UNDOTBS2' <INSTANCE1>.instance_name='<INSTANCE1>' Name of all instances <INSTANCE2>.instance_name='<INSTANCE2>' <INSTANCE1>.service_names='<DATABASE>' Name of common service <INSTANCE2>.service_names='<DATABASE>' <INSTANCE1>.local_listener=LST_<INSTANCE1> Specifie (to the pmon process) the local listener address. <INSTANCE1>.remote_listener=LST_<INSTANCE2> Specifie (to the pmon process) the distant listener address. <INSTANCE2>.local_listener=LST_<INSTANCE2> Specifie (to the pmon process) the local listener address. <INSTANCE2>.remote_listener=LST_<INSTANCE1> Specifie (to the pmon process) the distant listener address. Le listener.ora doit avoir : LST_INSTANCE1 =(DESCRIPTION_LIST =(DESCRIPTION =(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC)))(DESCRIPTION =(ADDRESS_LIST =(ADDRESS = (PROTOCOL = TCP)(HOST = VirtuelIPNode1)(PORT = 1521))))) Tu peux mettre la partie ADDRESS= directement dans le spfile.. Création du UNDOTBS pour INSTANCE2 CREATE UNDO TABLESPACE "UNDOTBS2" DATAFILE .... c'est classique et c'est à faire sur l'INSTANCE1 Création des redologs: ALTER DATABASE ADD LOGFILE THREAD 2 GROUP 4 ... le reste est classique et c'est à faire sur l'INSTANCE1 Enable de l'INSTANCE2 à partir de l'INSTANCE1 ALTER DATABASE ENABLE PUBLIC THREAD 2; ORACLE_SID=INSTANCE2 $ $ sqlplus ‘/ as sysdba’ SQL> startup La mise en archive_log : arrêter les deux instances, puis demarrer la première avec *.cluster_database=FALSE ensuite c'est classique... remettre *.cluster_database=TRUE Configure CRS $ srvctl add database -d DATABASE -o $ORACLE_HOME $ srvctl add instance -d DATABASE -i INSTANCE1 -n NODE1 $ srvctl add instance -d DATABASE -i INSTANCE2 -n NODE2 Cela met les infos dans : NODE1-oracle> more /var/opt/oracle/srvConfig.loc srvconfig_loc=/dev/vx/rdsk/rac/srvconf_raw_100m Après je peux aller plus loins sur le TAF, loadbalancing et le Failover... A+ |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com