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 15/07/2008, 16h34   #1
Invité de passage
 
Inscription : juillet 2008
Messages : 7
Détails du profil
Informations forums :
Inscription : juillet 2008
Messages : 7
Points : 1
Points : 1
Par défaut Sauvegardes Oracle + BackupExec / archivelogs

Bonjour,

Je débute en administration d'Oracle et je me penche en ce moment sur la sauvegarde de ma base de données et donc me pose quelques questions.
Actuellement, une sauvegarde complète est effectuée chaque nuit sur bande par un agent Oracle dans BackupExec, avec 7 bandes pour les 7 jours.
Je peux donc remonter au jour précédent si un problème surviens sur le serveur.
Je voudrais modifier cette stratégie pour pouvoir remonter au plus proche de la défaillance de mon serveur.
Pour cela, je pense écrire les archivelogs sur le disque local et sur un disque réseau (autre serveur). Cependant, BackupExec utilise les ctrlfiles pour stocker les informations de RMAN, donc je dois aussi dupliquer les redo.log et les ctrfiles, vrai ?

Ensuite, les archivelogs sont pour l'instant tous conservés sur mon disque (manque d'espace iminant), je souhaite les archiver sur une autre machine. Est-ce nécessaire dans la sens ou je ne pense pas devoir remonter au delà des 7 jours assurés par mes bandes mais que les archiver pourrait me donner une double garantie ?

De plus, si je supprime les archivelogs après chaque sauvegarde complète, mon ctrfile est modifié et les anciens archivelogs sont inutilisables, vrai ?

Comment archiver (purger) les anciens archivelog avec Rman sachant que l'agent Oracle BackupExec utilise un lecteur de bandes et que mon archivage se ferait sur réseau, je dois faire un script avec la commande configure mais est-ce que BackupExec va apprécier, sachant que voici le résultat d'un show all sur ma base :
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
utilisation du fichier de contr¶le de la base de donnÚes cible au lieu du catalogue de rÚcupÚration
paramÞtres de configuration RMAN :
CONFIGURE RETENTION POLICY TO REDUNDANCY 1; # default
CONFIGURE BACKUP OPTIMIZATION OFF; # default
CONFIGURE DEFAULT DEVICE TYPE TO DISK; # default
CONFIGURE CONTROLFILE AUTOBACKUP OFF; # default
CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '%F'; # default
CONFIGURE DEVICE TYPE DISK PARALLELISM 1 BACKUP TYPE TO BACKUPSET; # default
CONFIGURE DATAFILE BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default
CONFIGURE ARCHIVELOG BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default
CONFIGURE MAXSETSIZE TO UNLIMITED; # default
CONFIGURE ENCRYPTION FOR DATABASE OFF; # default
CONFIGURE ENCRYPTION ALGORITHM 'AES128'; # default
CONFIGURE ARCHIVELOG DELETION POLICY TO NONE; # default
CONFIGURE SNAPSHOT CONTROLFILE NAME TO 'D:\ORACLE\PRODUCT\10.2.0\DB_1\DATABASE\SNCFPROD.ORA'; # default
Enfin je suis un peu perdu, je ne sais pas trop ce qui serait le mieux pour moi, sachant qu'une standby database voire une base en cluster est prévue mais pour l'an prochain; la solution sera provisoire (et il y a du provisoire qui dure).

Merci à tous d'avance,

Guillaume
nob64 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/07/2008, 08h41   #2
Expert Confirmé
 
Inscription : février 2006
Messages : 3 433
Détails du profil
Informations forums :
Inscription : février 2006
Messages : 3 433
Points : 3 462
Points : 3 462
Citation:
Envoyé par nob64 Voir le message
Cependant, BackupExec utilise les ctrlfiles pour stocker les informations de RMAN, donc je dois aussi dupliquer les redo.log et les ctrfiles, vrai ?
RMAN utilise toujours les control files pour stocker ses données même si un catalogue RMAN est utilisé. Et que l'on utililise ou non RMAN, il est toujours recommandé de multiplexer les online redo logs et les control files.

Citation:
Envoyé par nob64 Voir le message
Ensuite, les archivelogs sont pour l'instant tous conservés sur mon disque (manque d'espace iminant), je souhaite les archiver sur une autre machine. Est-ce nécessaire dans la sens ou je ne pense pas devoir remonter au delà des 7 jours assurés par mes bandes mais que les archiver pourrait me donner une double garantie ?
Si vous ne voulez pas restaurer la base à un état plus vieux de 7 jours, vous pouvez en effet supprimer les archive logs plus vieux de 7 jours comme les sauvegardes de la base plus vieilles que 7 jours.

Citation:
Envoyé par nob64 Voir le message
De plus, si je supprime les archivelogs après chaque sauvegarde complète, mon ctrfile est modifié et les anciens archivelogs sont inutilisables, vrai ?
Si vous utilisez RMAN pour sauvegarder et supprimer les archive logs, oui les données RMAN seront mises à jours dans les control files. Les archive logs
supprimés sur le disque mais disponibles dans les sauvegardes RMAN sont toujours utilisables par RMAN.


Pour demander à RMAN de gérer automatiquement les sauvegardes afin de pouvoir restaurer une base avec une fenêtre de 7 jours, le plus simple est de définiir une retention policy:

Code :
CONFIGURE RETENTION POLICY TO RECOVERY WINDOW OF 7 DAYS;
et d'exécuter de façon périodique la suppression des sauvegardes qui tient compte de la retention policy avec:
Pour supprimer les archive logs sur disque après leur sauvegarde par RMAN vous pouvez utiliser:
Code :
BACKUP ARCHIVELOG ALL DELETE INPUT;
__________________
P. Forstmann

AskTom Forums OTN doc 8, 9, 10 et 11
pifor est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/07/2008, 11h18   #3
Invité de passage
 
Inscription : juillet 2008
Messages : 7
Détails du profil
Informations forums :
Inscription : juillet 2008
Messages : 7
Points : 1
Points : 1
Bonjour et merci pour votre réponse.

Je vais donc multiplexer les archivelog, les redolog et les control files.

et configurer :

CONFIGURE RETENTION POLICY TO RECOVERY WINDOW OF 7 DAYS;
DELETE OBSOLETE;
BACKUP ARCHIVELOG ALL DELETE INPUT;

Au final, j'aurai toutes les nuits une sauvegarde complète, sur 7 jours (7 bandes) et je pourrais remonter à n'importe quand dans les 7 derniers jours si j'ai bien compris.
Avec le multiplexage, (sous réserve que mon emplacement numéro 2 soit encore fonctionnel après incident), je pourrais remonter la dernière sauvegarde depuis ma bande et rejouer les redo et archivelogs jusqu'au moment du crash, exact ?

Merci encore pour ces précisions.

Guillaume
nob64 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/07/2008, 13h32   #4
Expert Confirmé
 
Inscription : février 2006
Messages : 3 433
Détails du profil
Informations forums :
Inscription : février 2006
Messages : 3 433
Points : 3 462
Points : 3 462
Il faut faire la différence entre une commande CONFIGURE qui n'est une commande de configuration enregistrée dans le référentiel RMAN et que vous n'avez pas besoin de reexécuter à chaque fois et les commandes BACKUP ou DELETE qui doivent être enregistrées dans des scripts qu'il faut exécuter à intervalle régulier.

En cas de restauration, ce sont les commandes RMAN RESTORE et RECOVER qui vont demander au media manager (ici BackupExec) de rechercher les bonnes bandes qui contiennent les bonnes sauvegardes: en général cette opération ne nécessite pas de montage manuel de bande.

Voir le tutoriel et celui ci.

Il faut un minimum de test des procédures de sauvegardes et surtout de restauration: sauvegarder c'est bien, surveiller ces sauvegardes c'est mieux mais savoir restaurer c'est indispensable sinon
__________________
P. Forstmann

AskTom Forums OTN doc 8, 9, 10 et 11
pifor est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/07/2008, 13h52   #5
Membre confirmé
 
Inscription : juillet 2007
Messages : 357
Détails du profil
Informations forums :
Inscription : juillet 2007
Messages : 357
Points : 226
Points : 226
salut

J ai moi meme une base oracle 10 en administration avec backup exec comme agent de sauvegarde, voci le scripts que j'utilise pour la purge des backup non util.

Code :
1
2
3
4
5
6
7
8
9
10
run {
allocate channel ch0 type sbt;
CONFIGURE BACKUP OPTIMIZATION ON;
send "NBBSA_JOB_TEMPLATE=Sauvegardeoracle";
CROSSCHECK BACKUP DEVICE TYPE SBT;
CROSSCHECK ARCHIVELOG ALL DEVICE TYPE SBT;
DELETE FORCE NOPROMPT EXPIRED BACKUP DEVICE TYPE SBT;
DELETE FORCE NOPROMPT OBSOLETE DEVICE TYPE SBT;
CATALOG RECOVERY AREA;
}
et celui ci pour faire le backup

Code :
1
2
3
4
5
6
run {
allocate channel ch0 type sbt;
CONFIGURE BACKUP OPTIMIZATION ON;
send "NBBSA_JOB_TEMPLATE=Sauvegardeoracle";
BACKUP  AS BACKUPSET FULL DATABASE TAG ='Backup_Data_Full' INCLUDE CURRENT CONTROLFILE PLUS ARCHIVELOG TAG='Backup_AL_Full' ;
}
ZashOne est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/07/2008, 16h12   #6
Invité de passage
 
Inscription : juillet 2008
Messages : 7
Détails du profil
Informations forums :
Inscription : juillet 2008
Messages : 7
Points : 1
Points : 1
Merci encore pour ces précisions et les scripts,

J'ai eu l'occasion de trouver le script RMAN de BackupExec dans mes journaux d'erreur mais comment y accéder et le modifier ailleur ?


Voici mon script généré par BackupExec (je n'ai jamais créé ce script moi-même), il s'est créé dans les paramètres Oracle de mon job de sauvegarde.

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
 RUN {
 ALLOCATE CHANNEL ch0
     TYPE 'SBT_TAPE';
 SEND 'BSA_SERVICE_HOST=ServeurOracle,NBBSA_TOTAL_STREAMS=1,NBBSA_DB_DEVICE_NAME=Oracle-Win::\\ServeurOracle\MonAppli';
 BACKUP
     INCREMENTAL LEVEL=0
     FORMAT 'BE_U'
     DATABASE FORCE PLUS ARCHIVELOG FORCE;
 BACKUP CURRENT CONTROLFILE 
     FORMAT 'BE_U';
 
 RELEASE CHANNEL ch0;
 }
J'ai installé une base de test pour me faire la main, mais je n'ai pas installé BAckupExec pour tester.

J'avais déjà lu les tutos que vous m'avez conseillés et je viens de recevoir les livres Oracle 10g - guide du DBA et le Technote d'Olivier Heurtel. A ce moment je m'interroge plus sur mon scénario de sauvegarde mais je pense faire simplement sauvegarde complète tous les jours (sans suppression des archivelogs) + multiplexage + sauvegarde des archive logs avec purge sur bande régulièrement :
Code :
backup archivelog until time 'sysdate -7' tag='Archive_AL_Full' DELETE ALL input
encore un grand merci,

Guillaume
nob64 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/07/2008, 16h48   #7
Membre confirmé
 
Inscription : juillet 2007
Messages : 357
Détails du profil
Informations forums :
Inscription : juillet 2007
Messages : 357
Points : 226
Points : 226
En fait, je n ai que une derniere base avec backup exec, car on a migrer tout les autres outils de sauvegarde vers Oracle secur Backup au passage vers Oracle 11. Perso , j 'ai trouver backup exec tres lourd a configurer et a administrer notement a cause de sa base mssql server. Donc si Backup exec n est pas imposer mon conseil serai de ne pas l utiliser dans une future mise en place.

Sinon le squelette des scripts que je t ai fourni se trouve dans le repertoire d installation de Backup exec dans un sous repertoire oracle.


Pour ton probleme. Sous oracle 10 , le plus simple est de cree tes archivelogs dans la flash_recovery_area et de designer une taille max correcte pour cette zone. Ensuite suivant ta politique de sauvegarde , ici 7 jours. les archivelog et backup seront suprimes a la demande par oracle sans que tu te soucie de l espace disque. Si tu multiplexe , tu peux toujours supprimer dans les autres destinations avec un scipt batch/sql.

De toute maniere c est normal d etre dans le brouillard lorsque tu demarre avec les sauvegardes RMAN mais tout s eclairci petit a petit avec un peu d effort. Bon courage
ZashOne est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/07/2008, 17h09   #8
Invité de passage
 
Inscription : juillet 2008
Messages : 7
Détails du profil
Informations forums :
Inscription : juillet 2008
Messages : 7
Points : 1
Points : 1
Merci ZashOne,

En effet, c'est pas évident d'un premier abord, il faut surtout se dire qu'il faut faire confiance à Rman. Enfin, je comptais bien me débarrasser de l'agent Oracle dans BackupExec tot ou tard, grand manque de transparence et d'options comparé à Rman.

Guillaume
nob64 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/07/2008, 18h30   #9
Membre confirmé
 
Inscription : juillet 2007
Messages : 357
Détails du profil
Informations forums :
Inscription : juillet 2007
Messages : 357
Points : 226
Points : 226
Citation:
Enfin, je comptais bien me débarrasser de l'agent Oracle dans BackupExec tot ou tard, grand manque de transparence et d'options comparé à Rman.
En fait backup exec est un "media manager" qui s occupe de gerer des bandes et permet de sauegarder des fichier. L agent oracle est un module complementaire qui utilise l api de rman fournie par ORacle pour stocker des backup rman sur bande et mettre a jour le catalogue rman.
Tu peux realiser cette tache soit a la souris avec l interface de la console d' administration de backup exec ou via des scripts Rman tel que je t' ai fourni.

Dans ce dernier cas en fait tu connecte l' utilitaire rman a ta base et lui va dialoguer avec l agent Oracle de backup exec pour realiser la sauvegarde via la commande send.

Je sais pas si tu comprend mieux comme ca mais quoi qu il arrive si tu veux faire des sauvegardes sur bande tu devra utilise un media manager. Perso je prefere "OSB - oracle secure backup" de Oracle.

TU peux toujours utiliser rman en parallele pour faire des sauvegardes sur disques.

Des petits conseil pour etre sure de recuperer ta base en cas de panne du serveur primaire (crash disque)

-Effectue des sauvegardes rman sur disques et copie les manuelement sur un disque dur externe en plus des sauvegardes sur bande
-Effectue toujours des backup du controlfile/spfile (INCLUDE CURRENT CONTROLFILE) et autobackup du controlfile/spfile
-Utilise l' utilitaire configuration de base de donnee de oracle pour creer les script de creation de ta base et garde les preciseusement.
-Recupere le DBID de ta base via "select dbid from v$database" et garde se parametre precieusement.
- Si possible effectue regulierement des datapump export.

Avec ca le jour ou ca plante tu est sure de recuperer une base fonctionnelle.
ZashOne est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/07/2008, 14h02   #10
Invité de passage
 
Inscription : juillet 2008
Messages : 7
Détails du profil
Informations forums :
Inscription : juillet 2008
Messages : 7
Points : 1
Points : 1
Merci beaucoup pour toutes ces précisions ZashOne,

Je vais mettre en place une sauvegarde sur disque donc et écrire ma procédure de restauration selon le principe de EPxport/import + application des sauvegardes.
Par contre, pour la sauvegarde sur bande avec BackupExec, je ne trouve pas le script rman (voir mon message précédent avec le contenu du RUN{})dans "\scripts\oracle", je n'ai que des samples. J'aurai souhaité le modifier a la main car je ne vois pas comment configurer un script à part et l'utiliser avec BackupExec directement (le but étant de synchroniser mon backup d'Oracle avec la sauvegarde générale des serveurs telle qu'elle l'est actuellement, totalement intégré dans mon job de sauvegarde chaque nuit). Je pourrais lancer un script à part en utilisant BackupExec comme media manager, mais le mieux serait quand meme de planifier son exécution directement dans mon job de sauvegarde dans BE.

Guillaume
nob64 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/07/2008, 11h35   #11
Membre confirmé
 
Inscription : juillet 2007
Messages : 357
Détails du profil
Informations forums :
Inscription : juillet 2007
Messages : 357
Points : 226
Points : 226
Les samples que tu voit c'est un exemple adapte juste la commande BACKUP ... , celle que je t ai donné est assez complete.

Mais rappel toi bien que ces samples, c'est pour lancer des backup de type rman sur bande en utilsant backup exec comme media manager via la ligne de commande. Ca necessite de bien configurer l'agent oracle de backup exec et le media manager (Job template .....).
Je doit avoir une procedure qui traine quelque part au cas ou tu galere. MAis tu peux tout aussi bien utiliser l inteface graphique si tu veux et programme des taches automatiques de sauvegarde a interval regulier.
ZashOne est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/07/2008, 14h47   #12
Invité de passage
 
Inscription : juillet 2008
Messages : 7
Détails du profil
Informations forums :
Inscription : juillet 2008
Messages : 7
Points : 1
Points : 1
Bien vu pour les samples, je suis en ce moment dans le guide d'admin de BackupExec pour voir comment lier les 2 (1800 pages!!!).
Merci encore,

Guillaume
nob64 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 21h22.


 
 
 
 
Partenaires

Hébergement Web