Précédent   Forum des professionnels en informatique > Bases de données > Oracle > Administration
Administration Forum d'entraide sur l'administration du serveur Oracle
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 26/08/2008, 15h00   #1
Nouveau Membre du Club
 
Inscription : décembre 2003
Messages : 75
Détails du profil
Informations forums :
Inscription : décembre 2003
Messages : 75
Points : 27
Points : 27
Par défaut Oracle 10g Dataguard

Bonjour à tous,

J'ai récupéré la batterie de documentation officielle d'Oracle mais je suis encore perdu. J'aurais besoin d'un petit coup de pouce pour savoir par où commencer.

Je souhaiterais installer Fast Start Failover :
Si j'ai bien compris
- il faut d'abord installer une primary instance sur une machine puis une standby instance.
Question Est-ce que l'instance primaire doit avoir une configuration particulière ou bien est-ce que la création d'une instance classique suffit?
Même question pour l'instance standby.
- Il parrait qu'Oracle met à disposition un assistant : le Dataguard Broker, or je ne le vois pas dans l'install standard que j'ai fait d'Oracle. Il est dit qu'il faut utiliser un SPFILE mais il n'est pas dit si il y a un assistant pour l'obtenir.

- En fait Fast Start Failover permet juste d'avoir moins d'opérations DBA à faire pour redémarrer et basculer en cas de failover mais n'est en rien moins facile à mettre en place qu'un autre mode de Dataguard?

- Est-ce que la mise en place de Dataguard est possible pour quelqu'un de relativement inexpérimenté?

Merci d'avance



Config:
Win 2003 server
Oracle 10gR2.

Petite précision: Je veux utiliser Dataguard dans le cas le plus simple: Une seule instance de base de donnée, avec un physical standby.
lunart est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/08/2008, 16h13   #2
Nouveau Membre du Club
 
Inscription : décembre 2003
Messages : 75
Détails du profil
Informations forums :
Inscription : décembre 2003
Messages : 75
Points : 27
Points : 27
Par défaut Primary database with Dataguard

Citation:
A standby database is a transactionally consistent copy of an Oracle production
database that is initially created from a backup copy of the primary database.
D'après ce qui est écrit je n'ai rien à faire du côté de la primary database pour pouvoir profiter du Dataguard.

Est-ce que lorsqu'ils parlent de backup copy ici il s'agit des fichiers de logs?
lunart est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/08/2008, 21h47   #3
Membre éprouvé
 
Femme
Administrateur de base de données
Inscription : novembre 2007
Messages : 341
Détails du profil
Informations personnelles :
Sexe : Femme
Localisation : France

Informations professionnelles :
Activité : Administrateur de base de données

Informations forums :
Inscription : novembre 2007
Messages : 341
Points : 478
Points : 478
si si, il y a des choses à faire sur la primary, comme ajuster certains paramètres du fichier d'initialisation, en ajouter d'autres, ajouter des standby logfiles, passer la base en archivelog si elle ne l'est pas déjà, créer un standby controlfile qu'on déplace ensuite vers la standby, modifier le tnsnames, et j'en passe.
La standby n'est qu'une copie physique de la primary (bête copie des fichiers de donnée, d'initialisation, du standby controlfile créé précédemment qu'on copie où il faut...) avec bien sûr des ajustements sur l'init., le listener, etc.
Je ne sais pas trop ce que valent les assistants. on comprend peut-être plus facilement ce qu'on fait quand on le fait soi-même étape par étape. maintenant, c'est vrai que des étapes, ça en fait quelques-unes et que pour débuter, ce n'est peut-être pas très simple.
une doc oracle très simple sur le sujet pour donner un modop simple :https://metalink.oracle.com/metalink...,1,1,helvetica
Heaven93 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/08/2008, 09h48   #4
Nouveau Membre du Club
 
Inscription : décembre 2003
Messages : 75
Détails du profil
Informations forums :
Inscription : décembre 2003
Messages : 75
Points : 27
Points : 27
Merci beaucoup pour ta réponse.
Ca me donne déjà une meilleure idée de la charge de travail.
On va dire que le plus gros du boulot est sur la base primaire alors, si j'ai bien compris.
J'aurais bien aimé consulter la doc mais il faut être enregistré sur metalink, et je viens de vérifier auprès du support nos CSI sont expirés .... Damned.

Peux tu m'envoyer un mp/mail avec le contenu?
lunart est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/08/2008, 10h42   #5
Nouveau Membre du Club
 
Inscription : décembre 2003
Messages : 75
Détails du profil
Informations forums :
Inscription : décembre 2003
Messages : 75
Points : 27
Points : 27
http://www.acs.ilstu.edu/docs/Oracle.../create_ps.htm

Est-ce que ce lien est équivalent en terme de contenu au lien que tu m'as indiqué?
lunart est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/08/2008, 10h51   #6
Membre éprouvé
 
Femme
Administrateur de base de données
Inscription : novembre 2007
Messages : 341
Détails du profil
Informations personnelles :
Sexe : Femme
Localisation : France

Informations professionnelles :
Activité : Administrateur de base de données

Informations forums :
Inscription : novembre 2007
Messages : 341
Points : 478
Points : 478
c'est très bien et beaucoup plus détaillé.
Heaven93 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/08/2008, 15h04   #7
Nouveau Membre du Club
 
Inscription : décembre 2003
Messages : 75
Détails du profil
Informations forums :
Inscription : décembre 2003
Messages : 75
Points : 27
Points : 27
Again,

Je voudrais être sur d'avoir bien compris l'exemple suivant:
Citation:

Example 3-1 shows the primary role initialization parameters that you maintain on the primary database. This example represents a Data Guard configuration with a primary database located in Chicago and one physical standby database located in Boston. The parameters shown in Example 3-1 are valid for the Chicago database when it is running in either the primary or the standby database role. The configuration examples use the names shown in the following table:
Database DB_UNIQUE_NAME Oracle Net Service Name

Primary chicago chicago

Physical standby boston boston
Mes deux bases Primary & Standby ont donc bien deux SID distinct?
lunart est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/08/2008, 17h30   #8
Membre éprouvé
 
Femme
Administrateur de base de données
Inscription : novembre 2007
Messages : 341
Détails du profil
Informations personnelles :
Sexe : Femme
Localisation : France

Informations professionnelles :
Activité : Administrateur de base de données

Informations forums :
Inscription : novembre 2007
Messages : 341
Points : 478
Points : 478
pas deux sid distincts, deux db_unique_name distincts : la primaire aura comme db_unique_name par exemple BASE et la standby BASE_SECOURS.
le db_name des deux côtés serait BASE dans ce cas
Heaven93 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/08/2008, 18h48   #9
Nouveau Membre du Club
 
Inscription : décembre 2003
Messages : 75
Détails du profil
Informations forums :
Inscription : décembre 2003
Messages : 75
Points : 27
Points : 27
J'imagine que sur le deuxième environnement je dois installer oracle 10gR2 de la même manière que je l'ai installé sur le premier environnement et si possible garder les même path.

Dois-je créer une nouvelle instance avec le même SID que pour la primaire?

Ou bien est-ce que directement à partir du backup l'instance de secours sera directement créée?
lunart est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/08/2008, 19h44   #10
Nouveau Membre du Club
 
Inscription : décembre 2003
Messages : 75
Détails du profil
Informations forums :
Inscription : décembre 2003
Messages : 75
Points : 27
Points : 27
Pour créer un backup de la base primaire est-ce que les étapes suivantes suffisent:

- lancer RMAN dans l'environnement de la base primaire
- effectuer "BACKUP DATABASE;"
- copier coller le résultat du backup dans l'environnement de la base de secours
- lancer RMAN dans l'env de la base de secours
- effectuer "RECOVER DATABASE;"

J'ai un doute quand je lis:
Citation:
There are a number of RMAN commands which cannot be used in RUN blocks.
Est-ce que RMAN doit être configuré avant (en dehors de RUN blocks) pour dire à quelle base se connecter et/ou restaurer? Qu'est-ce que RUN blocks?...

Merci d'avance
lunart est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/08/2008, 11h39   #11
Nouveau Membre du Club
 
Inscription : décembre 2003
Messages : 75
Détails du profil
Informations forums :
Inscription : décembre 2003
Messages : 75
Points : 27
Points : 27
Je me suis passé de RMAN, je fais un copier coller tout bête (après avoir arrêté la base) des dossiers suivants:
  • oradata/%mon_sid%
  • admin/%mon_sid%
  • flashrecovery
ainsi que des fichiers suivants:
  • listener.ora
  • tnsname.ora
  • sqlnet.ora

J'ai aussi récupéré le fichier de contrôle pour la base de standby :
Citation:
ALTER DATABASE CREATE STANDBY CONTROLFILE AS 'c:/temp/controlStandby.ctl'
Je l'ai copié collé à la place des anciens fichier de controle de la base de secours avec les même noms que les anciens.

J'ai néanmoins un doute:
Dans TNSNAME est-ce que je met exactement la même chose pour la base primaire et la base de secours?

Citation:
BASE1 =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = BPMHA1)(PORT = 1521))
)
(CONNECT_DATA =
(SID = BASA1)
(SERVER = DEDICATED)
)
)
Merci
lunart est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/08/2008, 15h06   #12
Membre éprouvé
 
Femme
Administrateur de base de données
Inscription : novembre 2007
Messages : 341
Détails du profil
Informations personnelles :
Sexe : Femme
Localisation : France

Informations professionnelles :
Activité : Administrateur de base de données

Informations forums :
Inscription : novembre 2007
Messages : 341
Points : 478
Points : 478
les standby controlfiles, tu les envoies sur la standby et tu remplaces les controlfiles par une copie de ce standby controlfile (en grdant les nom des controlfiles avant écrasement)
pour le tnsnames, il faut deux entrées sur chacun (sur la primaire et sur la standby). par exemple, avec une base SID=TEST :
le FAL_CLIENT='TEST_PRIMAIRE' et fal_server='TEST_SECOURS' dans l'init ==>
TEST_PRIMAIRE =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 138.1.137.234)(PORT = 1521))
)
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = TEST)
)
)
TEST_SECOURS =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 138.1.137.235)(PORT = 1521))
)
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = TEST)
)
pareil de l'autre côté en changeant les hosts.
Heaven93 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/08/2008, 18h20   #13
Nouveau Membre du Club
 
Inscription : décembre 2003
Messages : 75
Détails du profil
Informations forums :
Inscription : décembre 2003
Messages : 75
Points : 27
Points : 27
Merci!
Je progresse!

Encore un point flou:
Je dois démarrer ma base en read only.
J'aimerais automatiser le démarrage.
Hors si j'automatise le démarrage en read only est-ce que ça ne posera pas un problème lorsqu'il y aura un switch primary/standby ou après le retour à la normale?

Je compte l'automatiser de la manière suivante:
alter database open read only;
lunart est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/08/2008, 21h38   #14
Membre éprouvé
 
Femme
Administrateur de base de données
Inscription : novembre 2007
Messages : 341
Détails du profil
Informations personnelles :
Sexe : Femme
Localisation : France

Informations professionnelles :
Activité : Administrateur de base de données

Informations forums :
Inscription : novembre 2007
Messages : 341
Points : 478
Points : 478
je ne suis pas sûre de bien te suivre. laquelle souhaites-tu ouvrir en read only?
Heaven93 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/08/2008, 14h58   #15
Nouveau Membre du Club
 
Inscription : décembre 2003
Messages : 75
Détails du profil
Informations forums :
Inscription : décembre 2003
Messages : 75
Points : 27
Points : 27
la base de secours.
J'arrive à la démarrer en read only avec:
Code :
startup open READ only;
Je souhaite automatiser l'ouverture de cette base en read only avec:
Code :
ALTER DATABASE open READ only;
Par défaut Dataguard est en mode performance.
Est-ce que pour passer en mode high availability je suis obligé de créer des groupes et des threads?
Est-ce que la commande suivante pour la base de secours ne suffit pas :
Code :
1
2
3
4
SQL> ALTER SYSTEM SET LOG_ARCHIVE_DEST_2='SERVICE=chicago
  2> OPTIONAL LGWR SYNC AFFIRM 
  3> VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE)
  4> DB_UNIQUE_NAME=chicago';
lunart est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/08/2008, 16h36   #16
Membre éprouvé
 
Femme
Administrateur de base de données
Inscription : novembre 2007
Messages : 341
Détails du profil
Informations personnelles :
Sexe : Femme
Localisation : France

Informations professionnelles :
Activité : Administrateur de base de données

Informations forums :
Inscription : novembre 2007
Messages : 341
Points : 478
Points : 478
mais non, une base standby se monte mais ne s'ouvre pas en open
SQL> STARTUP MOUNT;
SQL> ALTER DATABASE RECOVER MANAGED STANDBY DATABASE DISCONNECT FROM SESSION;
Heaven93 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/08/2008, 22h35   #17
Membre éprouvé
 
Femme
Administrateur de base de données
Inscription : novembre 2007
Messages : 341
Détails du profil
Informations personnelles :
Sexe : Femme
Localisation : France

Informations professionnelles :
Activité : Administrateur de base de données

Informations forums :
Inscription : novembre 2007
Messages : 341
Points : 478
Points : 478
je n'avais pas vu la fin de ton post.
des groupes et des threads de quoi?

pour en revenir un peu au mode d'ouverture de la base standby : il ne serait pas cohérent qu'elle soit ouverte aux utilisateurs. c'est un clone de la base primaire sur laquelle on appliquera les mêmes modifications que celles que subit la primaire. donc la standby est en mode mount.
maintenant, pour passer en maximum availability, il faut modifier le paramètre d'initialisation LOG_ARCHIVE_DEST_2 sur la base primaire ainsi que sur la base standby (pour garder la configuration après une bascule) comme tu l'as écrit dans ton post (avec SYNCH et AFFIRM).
on monte le niveau de protection de cette manière :
Code :
1
2
3
4
shutdown immediate
startup mount;
ALTER DATABASE SET STANDBY DATABASE TO MAXIMIZE AVAILABILITY;
ALTER DATABASE open
maintenant, sur les groupes (tu parles de standby redologs), oui, il en faut autant que ce qu'il y a de groupes d'onlines redologs +1
il faut avoir une valeur suffisante pour le paramètre log_archive_max_process.
Heaven93 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/09/2008, 15h11   #18
Nouveau Membre du Club
 
Inscription : décembre 2003
Messages : 75
Détails du profil
Informations forums :
Inscription : décembre 2003
Messages : 75
Points : 27
Points : 27
Pour ce qui est du passage en maximum availability, peux tu me dire comment savoir le nombre de d'online redologs?
Il doit bien y avoir une requête
lunart est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 04/09/2008, 11h59   #19
Membre éprouvé
 
Femme
Administrateur de base de données
Inscription : novembre 2007
Messages : 341
Détails du profil
Informations personnelles :
Sexe : Femme
Localisation : France

Informations professionnelles :
Activité : Administrateur de base de données

Informations forums :
Inscription : novembre 2007
Messages : 341
Points : 478
Points : 478
pour savoir combien tu as sur ta primary tu interroges la vue v$log, tout simplement. après tu construis autant de standby redologs qu'il faut
Heaven93 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 21h59.


 
 
 
 
Partenaires

Hébergement Web