390 likes | 931 Views
Cours RMAN. Sauvegardes Adélie via RMAN et Time Navigator. Sommaire. Rman : Généralités Time Navigator : Généralités Principe de la sauvegarde Adelie Format de la sauvegarde Surveillance de l’activité Script Adélie commenté Principe de restauration Vues Rman utiles Scripts sh (shell).
E N D
Cours RMAN Sauvegardes Adélie via RMAN et Time Navigator Page 1
Sommaire • Rman : Généralités • Time Navigator : Généralités • Principe de la sauvegarde Adelie • Format de la sauvegarde • Surveillance de l’activité • Script Adélie commenté • Principe de restauration • Vues Rman utiles • Scripts sh (shell) Page 2
Sommaire • Rman : Généralités • Time Navigator : Généralités • Principe de la sauvegarde Adelie • Format de la sauvegarde • Surveillance de l’activité • Script Adélie commenté • Principe de restauration • Vues Rman utiles • Scripts sh (shell) Page 3
RMAN - Généralités • Rman (Recovery Manager) est l’utilitaire par excellence d’Oracle visant à sauvegarder une base de données à chaud • Rman utilise une interface similaire à SQLplus • Peu de commandes pour une portabilité maximum : un script écrit sur Hp-Ux peut être porté immédiatement sur NT, Linux… Page 4
Rman utilise un catalogue pour conserver la liste des sauvegardes effectuées. • Pour Adélie, ce catalogue est nommé CATAL et est situé sur servdon1 • Lors de la restauration, c’est ce catalogue qui est utilisé par Rman pour donner le « chemin le plus court » entre l’état actuel et l’état visé. Il n’est pas possible de modifier ce chemin, déterminé automatiquement. Page 5
Des commandes de sauvegarde : • Backup database • Backup controlfile • Restore database • Des commandes de maintenance • List backup of database • Crosscheck backup • Des commandes pour le catalogue de recupération • Connect target • Create catalog, drop catalog Page 6
La totalité des commandes RMAN de sauvegarde, de restauration et de vérification fonctionnent par script • Format du script: Run { Allocate channel c1 …. Backup database…. …. Release channel c1…. } Page 7
Une opération de sauvegarde/restauration Rman fonctionne obligatoirement sur au moins un canal • Un canal est systématiquement associé à une unité physique • «type disk » pour sauvegarde sur disque • «type sbt_tape » pour sauvegarde sur bande Page 8
Les commandes ne nécessitant pas d’être dans un script sont : • Les commandes de catalogue • Les commandes de connexion • Les commandes de configuration • Les commandes sql envoyées (ex : sql ‘alter system switch logfile’); • Les commandes de listage des sauvegarde Page 9
A noter : les scripts RMAN n’ont pas la possibilité d’être configurés, ni commentés. • Seul moyen éventuel de « configurer » les scripts : écrire un script paramétrable générant le script Rman. • Pour Adélie, des scripts génériques ont été écrits; ils sont réutilisés pour toutes les instances (/opt/sauvegarde_ADELIE/rman) Page 10
Sommaire • Rman : Généralités • Time Navigator : Généralités • Principe de la sauvegarde Adelie • Format de la sauvegarde • Surveillance de l’activité • Script Adélie commenté • Principe de restauration • Vues Rman utiles • Scripts sh (shell) Page 11
Time Navigator - Généralités • Pour Adélie, Time Navigator n’est utilisé (en sus de la couche graphique de gestion) qu’en tant que MML (Media Management Layer = Couche de gestion de media) • C’est donc Tina qui affecte les bandes en fonction des besoins et rapatrie les fichiers stockés en fonction des demandes d’ Rman. • Une interface spécifique à Rman est utilisée, via une librairie partagée (/tina/Lib/libtina_rman.sl, renommée en /oracle/ora920/lib/libobk.o) sur HP-Ux 64bits Page 12
Principe 1 canal RMAN= 1 jeu de bandes Tina • Pour chaque jeu de bande est associé un type de sauvegarde • ORA_TOTA pour les sauvegardes annuelles • ORA_TOTM pour les sauvegardes mensuelles • ORA_INC1 pour les sauvegardes hebdomadaires • ORA_INC2 pour les sauvegardes journalières • Rman ne peut de toutes façons gérer plus de 4 canaux en simultané. Page 13
Sommaire • Rman : Généralités • Time Navigator : Généralités • Principe de la sauvegarde Adelie • Format de la sauvegarde • Surveillance de l’activité • Script Adélie commenté • Principe de restauration • Vues Rman utiles • Scripts sh (shell) Page 14
Principe de la sauvegarde • A chaque sauvegarde n’est affecté qu’un seul canal, pour éviter la parallélisation des bandes et donc la dispersion des fichiers. • Chaque set de sauvegarde n’est donc a priori présent que sur une seule bande (sauf si la sauvegarde dépasse la taille d’une bande (320Go)) • Bandes sélectionnées par le réglage du canal : allocate channel c1 type 'sbt_tape‘ parms="ENV=(TINA_HOME=/tina, TINA_SERVICE_NAME=tina, TINA_RMAN_CATALOG=adelie, TINA_RMAN_FOLDER=ORA_TOTA, TINA_RMAN_USER=oracle)"; Page 15
La duplication des bandes pour les sauvegardes annuelles et mensuelles est faite directement par Tina, et non par Rman • La politique de rétention est gérée par Tina : • Annuelles : 5 ans • Mensuelles : 1 an • Hebdomadaires : 1 mois • Journalières : 1 semaine ce qui permet à Tina de recycler les bandes trop anciennes • La clôture des bandes est automatique mais gérée en externe (scripts clôture_bande_xxxxxxxxxx.sh) Page 16
0 2 2 2 2 2 2 1 2 2 2 2 2 2 1 2 2 2 2 0 D L M M J V S D L M M J V S D L J V S D Sauvegardes incrémentales cumulatives Page 17
Sommaire • Rman : Généralités • Time Navigator : Généralités • Principe de la sauvegarde Adelie • Format de la sauvegarde • Surveillance de l’activité • Script Adélie commenté • Principe de restauration • Vues Rman utiles • Scripts sh (shell) Page 18
Format de sauvegarde • Les sauvegardes RMAN (correspondant aux blocs changés) sont compilées dans un seul fichier, dont le nom est contrôlé par le paramètre ‘format’ de la commande backup, ex : format 'Annu_%d_%D%M%Y_%u' %d : instance %D%M%Y : date %u : identifiant unique pour effectuer plusieurs sauvegardes d’affilée. Page 19
La sauvegarde est envoyée par Rman à Tina, qui créé un pipe dans /tmp pour effectuer la sauvegarde. • La sauvegarde s’effectue pour Adélie en mode synchrone. • Comment lister les sauvegardes (mode connecté): • List backup of database; • List backup of archivelog all; • List backup of controlfile; Page 20
Sommaire • Rman : Généralités • Time Navigator : Généralités • Principe de la sauvegarde Adelie • Format de la sauvegarde • Surveillance de l’activité • Script Adélie commenté • Principe de restauration • Vues Rman utiles • Scripts sh (shell) Page 21
Surveillance d’activité • Tina communique avec Rman, la trace peut être trouvée dans /oracle/admin/SILOXXXX/udump/sbtio.log • Tina peut etre surveillé via le log /tina/Adm/Event : faire un pour suivre l’avancement d’une tail –f /tina/Adm/event sauvegarde par exemple. • Rman peut etre surveillé via le log log_rman.txt pendant la sauvegarde ou dans les logs applicatifs (/var/opt/ADE-LOG/) une fois celle-ci terminée. Page 22
Sommaire • Rman : Généralités • Time Navigator : Généralités • Principe de la sauvegarde Adelie • Format de la sauvegarde • Surveillance de l’activité • Script Adélie commenté • Principe de restauration • Vues Rman utiles • Scripts sh (shell) Page 23
Script Adélie commenté • su – declaadl • rman catalog rman/rman@catal • connect target; (connexion du catalogue à la base de données cible (« target database») • configure backup optimization off; (pas d’optimisation de place) • configure controlfile autobackup off; (pas de sauvegarde automatique des fichiers de contrôle) • sql 'alter system switch logfile'; (change le fichier archivelog courant pour pouvoir le sauvegarder au complet) • change archivelog all validate; (verifie le statut des fichiers d’archivelog pour synchroniser le catalogue) • resync catalog; (resynchronisation complète forcée du catalogue) • run • {(début du script de sauvegarde) • allocate channel c1 type 'sbt_tape' • parms="ENV=(TINA_HOME=/tina, TINA_SERVICE_NAME=tina, TINA_RMAN_CATALOG=adelie, TINA_RMAN_FOLDER=ORA_TOTA, TINA_RMAN_USER=oracle)"; (on alloue un canal de sauvegarde sur le jeu de bandes annuelles) • backup full format 'Annu_%d_%D%M%Y_%u' database include current controlfile; (sauvegarde full de la base de données, y compris les ctl sauvegardés en double (dans dbs)) • backup archivelog all delete input skip inaccessible; (sauve les archivelogs et les efface) • release channel c1; (dé-alloue le canal de communication) • } Page 24
Sommaire • Rman : Généralités • Time Navigator : Généralités • Principe de la sauvegarde Adelie • Format de la sauvegarde • Surveillance de l’activité • Script Adélie commenté • Principe de restauration • Vues Rman utiles • Scripts sh (shell) Page 25
Principe de restauration • Il s’agit dans ce cas d’allouer la totalité des canaux, un par jeu de bande, afin de pouvoir ramener la totalité des fichiers réclamés par Rman pour la reconstruction de la base. • Trois étapes sont nécessaires : • Restauration du fichier de contrôle • Restauration des fichiers de la base de données • Application des archivelog et redolog si besoin est. Page 26
Ces trois étapes correspondent à trois scripts distincts, afin de s’adapter aux besoins du moment : • A_Restore_Controlfile.rman • B_Restore_Database.rman • C_Recover_Database.rman • Ces scripts peuvent être modifiés pour les adapter aux besoins, notemment le PITR. Page 27
Cf. documentation « Restauration de bases de données » (SII 0802-B3-FMO05) pour le mode opératoire complet de la restauration. Page 28
Sommaire • Rman : Généralités • Time Navigator : Généralités • Principe de la sauvegarde Adelie • Format de la sauvegarde • Surveillance de l’activité • Script Adélie commenté • Principe de restauration • Vues Rman utiles • Scripts sh (shell) Page 29
Vues RMAN utiles • RMAN est fourni avec un certain nombre de vues dynamiques permettant d’interroger directement la base de données en sql sans passer par l’utilitaire rman • Pratique pour lister plusieurs composants de plusieurs bases de données. Page 30
Vues Rman • RC_ARCHIVED_LOG => Voir les sauvegardes d’archivelog • RC_BACKUP_CONTROLFILE => Voir les sauvegardes de controlfile • RC_BACKUP_DATAFILE => Voir les sauvegardes de fichiers • RC_BACKUP_PIECE => Voir un morceau d’un set de sauvegarde • RC_BACKUP_REDOLOG => Voir les sauvegardes des redolog • RC_BACKUP_SET => Voir un ensemble (« set ») de sauvegardes • RC_CHECKPOINT => Voir l’etat des CP lors de la sauvegarde • RC_DATABASE => Voir les bases de données déclarées • RC_DATAFILE => Voir les fichiers des BD sauvegardées • RC_REDO_LOG => Voir les fichiers redologs des BD sauvegardées • RC_RMAN_CONFIGURATION => Voir la configuration d’RMAN • RC_TABLESPACE => Voir les sauvegardes des tablespaces • DB => Liste des bases de données • DBINC => Liste des « incarnations » de bases de données • Utilisation comme n’importe quelle table SQL….. Page 31
Sommaire • Rman : Généralités • Time Navigator : Généralités • Principe de la sauvegarde Adelie • Format de la sauvegarde • Surveillance de l’activité • Script Adélie commenté • Principe de restauration • Vues Rman utiles • Scripts sh (shell) Page 32
Scripts sh (shell) • Les scripts sh fournissent une méthode pratique pour enrober les scripts Rman, qui ne sont pas paramétrables. • Ils sont exécutés par chaque utilisateur Adélie, afin de bénéficier des variables d’environnement (ex : ORACLE_SID, mot de passe utilisateur rman, destinations des logs, etc…). Page 33
Variables créées: • PATH_SH => répertoire des scripts sh • PATH_RMAN => répertoire des scripts rman • PATH_SQL => répertoire des scripts sql • PATH_SCRIPTS_LOG => répertoire des logs • CONFIG_PATH => répertoire du fichier de config • ANNU_ARCHIVE_LOG => nom du log annuel • MENS_ARCHIVE_LOG => nom du log mensuel • HEBD_ARCHIVE_LOG => nom du log hebdo • JOUR_ARCHIVE_LOG => nom du log journalier • TARGET_DATABASE => Instance sauvegardée Page 34
Fonctionnement • Le script vérifie tout d’abord qu’aucune sauvegarde n’est en cours (fichier .wit dans $CONFIG_PATH) • Vérifie si le paramètre archivelog est passé au script : dans ce cas la, passe la base en archivelog et la replace en noarchive en sortant • Crée le fichier témoin • Lance le processus de sauvegarde via le script RMAN • Vérifie le code erreur en retour d’RMAN et decide si la sauvegarde est ok ou non. • Affiche le log rman dans tous les cas (temporaire) • Toutes ces opérations sont gardées dans le log situé dans $PATH_SCRIPT_LOG (ici /var/opt/ADE-LOG) Page 35