Plan. Reprise sur Panne FIP - BDD. Problématique. Nicolas Travers



Documents pareils
Nœud Suisse du Projet International GBIF (Global Biodiversity Information Facility)

Présentation de l'outil RMAN d'oracle

RECOVERY MANAGER G. Mopolo-Moké prof. MBDS UNSA 2005/ 2006

Secteur Tertiaire Informatique Filière étude - développement. Accueil. Apprentissage. Période en entreprise. Evaluation.

COMPOSANTS DE L ARCHITECTURE D UN SGBD. Chapitre 1

Bacula. It comes by night and sucks the vital essence from your computers. Guillaume Arcas

Programme détaillé. Administrateur de Base de Données Oracle - SQLServer - MySQL. Objectifs de la formation. Les métiers

Mise en oeuvre TSM 6.1

TP Administration Oracle

Oracle Maximum Availability Architecture

SGBDR. Systèmes de Gestion de Bases de Données (Relationnelles)

CHAPITRE 1 ARCHITECTURE

Techniques de stockage. Techniques de stockage, P. Rigaux p.1/43

Cours Bases de données 2ème année IUT

CYCLE CERTIFIANT ADMINISTRATEUR BASES DE DONNÉES

Eléments de base de la sécurité des bases de données

Bacula R - The Network Backup Solution

HowTo Installer egroupware 1.2 sur SME Serveur 7.0

MYSQLDUMP & ZRM COMMUNITY

Administration d'une base de données

Agenda. Introduction au projet SIMM. Réduction des volumes de sauvegarde avec RMAN

Performances. Gestion des serveurs (2/2) Clustering. Grid Computing

Cours 6. Sécurisation d un SGBD. DBA - M1ASR - Université Evry 1

SQL Server Database Engine : Part1. Modes de récupération / Sauvegardes / Checkpoint

BUFFER CACHE SHARED POOL LRU

Encryptions, compression et partitionnement des données

Administration des Bases de Données Oracle

Bases de données avancées Concurrence d'accès et reprise

Les méthodes de sauvegarde en environnement virtuel

EMC Data Domain Boost for Oracle Recovery Manager (RMAN)

Les transactions 1/46. I même en cas de panne logicielle ou matérielle. I Concept de transaction. I Gestion de la concurrence : les solutions

SQL Server 2008 solutions de sauvegarde et de continuité

Famille Backup Exec Backup Exec 12.5 Backup Exec System Recovery 2010

CA ARCserve Backup r12

Clients et agents Symantec NetBackup 7

Administration des bases de données sous Oracle. 10g. Fabien De Marchi, Jean-Marc Petit. Université de Lyon. November 22, /96

TP Sauvegarde et restauration avec le logiciel Cobian Backup. Etape 1 :

TP Bases de données réparties

Présentation du module Base de données spatio-temporelles

Oracle Database 11g: Administration Workshop I Release 2

Installation d'un serveur FTP géré par une base de données MySQL

Gestion des utilisateurs et de leurs droits

Logiciel HLA Fusion Version 3.X.X

4. Utilisation d un SGBD : le langage SQL. 5. Normalisation

VERITAS NetBackup 6.x en 5 jours : Administration Avancée

Implémentation des SGBD

TIVOLI STORAGE MANAGER. Denis Vandaele

Veeam Backup & Replication

Limitations of the Playstation 3 for High Performance Cluster Computing

1200 Incendies par an dans des «Data Center»!! Et vous. Moi j ai Data Guard 10g!!!!

MySQL - Réplication. Fichiers de relais et de statut de la réplication. Mise en place de la réplication

Architecture de la plateforme SBC

Synchronisation Mysql (Replication)

CA ARCserve Backup pour Linux

3. La SGA ou System global Area

Structure fonctionnelle d un SGBD

Expérience d implémentation d ASM avec CRS sur un environnement AIX

420-PK6-SL Banques de données Avancées UTILISATEURS

Introduction. René J. Chevance

TP11 - Administration/Tuning

Bases de données et sites WEB Licence d informatique LI345

Bases de données et sites WEB

//////////////////////////////////////////////////////////////////// Administration bases de données

VERITAS NetBackup 5.0 en 5 jours : Administration Avancée

Partie 0 : Gestion des tablespace et des utilisateurs... 3

Analyse Concurrentielle Retrospect et ses concurrents

<Insert Picture Here> Exadata Storage Server et DB Machine V2

Sécuriser les bases de données ORACLE

SQL2005, la migration Atelier 316

Oracle : Administration

Fonctionnalités d Acronis :

Pharmed. gestion de pharmacie hospitalière. Installation / déploiement

Oracle 11g Optimisez vos bases de données en production (ressources matérielles, stockage, mémoire, requêtes)

ORACLE 10G DISTRIBUTION ET REPLICATION. Distribution de données avec Oracle. G. Mopolo-Moké prof. Associé UNSA 2009/ 2010

PLANNING DES ACTIVITES PROFESSIONNELLES

Contenu des formations

Master I Génie Logiciel

Acronis Backup & Recovery 10 Server for Windows Acronis Backup & Recovery 10 Workstation. Guide de démarrage rapide

Analyse Concurrentielle Retrospect et ses concurrents

Pourquoi OneSolutions a choisi SyselCloud

A.E.C. GESTION DES APPLICATIONS TECHNOLOGIE DE L'INFORMATION LEA.BW

Introduction aux SGBDR

Oracle 11g - Dataguard

CHAPITRE 4 POLITIQUES DE CONTRÔLES DES ACCÈS SOUS ORACLE ADMINISTRATION ET TUNING DE BASES DE DONNÉES 10/05/2015 RESPONSABLE DR K.

Procédure serveur : gestion des environnements X3 et bases de données ORACLE

TUTORIEL D INSTALLATION D ORACLE ET DE SQL DEVELOPPER TUTORIEL D INSTALLATION D ORACLE...1 ET DE SQL DEVELOPPER...1

Tivoli Storage Manager version TSM Server

Description de SQL SERVER. historique

PREPARATION AU PTI SGBD

Serveur Linux : FTP. Mise en place d un service FTP sous Linux. Bouron Dimitri 20/04/2014

Online Backup. & Recovery Service

Prise en main d une Cyberclasse

Du 10 Fév. au 14 Mars 2014

MODE OPERATOIRE CORIM PROGRESS / SECTION MEI. Exploitation Informatique

<Insert Picture Here> Solaris pour la base de donnés Oracle

Les bases de l optimisation SQL avec DB2 for i

Système de Stockage Sécurisé et Distribué

Windows Serveur 2008 R2

SOMMAIRE Thématique : Systèmes d'information et d'exploitation

Transcription:

Introduction Reprise Stratégies Procédures RMAN Introduction Reprise Stratégies Procédures RMAN Plan Reprise sur Panne FIP - BDD Nicolas Travers Équipe Vertigo & ISI Laboratoire CEDRIC Conservatoire National des Arts & Métiers, Paris, France 1 / 51 2 / 51 Introduction Reprise Stratégies Procédures RMAN Introduction Reprise Stratégies Procédures RMAN Problématique Une base de données est constamment modifiées Modifications en mémoire pour plus d e cacité Le contenu de la base de données n est pas toujours à jour Définir une stratégie de Reprise en cas de panne 3 / 51 4 / 51

Introduction Reprise Stratégies Procédures RMAN Rappel : Modèle abstrait de la BD Introduction Reprise Stratégies Procédures RMAN BD centralisée, transactions concurrentes : T1 T2... Tn GT Ordonnanceur GR GD GC Composantes Gestionnaire de transactions (GT) : reçoit les transactions et les prépare pour exécution Ordonnanceur (Scheduler) : contrôle l ordre d exécution des opérations (séquences sérialisables et recouvrables) Gestionnaire de reprise (GR) : Commit + Abort Gestionnaire du Cache (GC) : gestion de la mémoire volatile et de la mémoire stable GR + GC = GD (Gestionnaire de données) : assure la tolérance aux pannes BD 5 / 51 6 / 51 Objectif Gestionnaire de cache Gestionnaire de Reprise Journalisation 7 / 51 8 / 51

2. Architecture Objectif dernière valeur validée de x :dernièrevaleurécriteenx par une transaction validée état validé de la BD :l ensembledesdernièresvaleursvalidées pour tous les enregistrements panne : mémoire volatile perdue Restart doit ramener la BD à l état validé avant la panne problèmes annuler l e et des transactions non-validées terminer les transactions validées structures à garder en mémoire stable pour assurer la reprise 9 / 51 Les composantes du Gestionnaire de données (GD) Gestionnaire du Cache (GC) : gère les deux mémoires Gestionnaire de reprise (GR) : opérations BD + Restart BD stable Journal Restart Memoire stable Fetch Flush GR GC Read, Write, Commit, Abort Fetch, Flush Read, Write Cache Memoire volatile Gestionnaire de donnees 10 / 51 Objectif Gestionnaire de cache Gestionnaire de Reprise Journalisation Gestionnaire du Cache utilisation de la mémoire volatile : rapidité idéal : copie de toute la BD en réalité : caching, car taille mémoire volatile limitée Cache zone de mémoire volatile divisée en cellules : 1 enreg./cellule en réalité, le Cache stocke des pages disque 11 / 51 12 / 51

Opérations Flush (c), c cellule si c inconsistante alors copier c sur disque rendre c consistante sinon rien ; Objectif Gestionnaire de cache Gestionnaire de Reprise Journalisation Fetch (x), x enregistrement (pas dans le Cache) sélectionner c cellule vide si toutes les cellules occupées alors vider une cellule c avec Flush et l utiliser comme cellule vide copier x du disque en c rendre c consistante mettre à jour le répertoire du cache avec (x, c) 13 / 51 14 / 51 Gestionnaire de reprise Opérations GR Read (T i,x) GR Write (T i,x,v) GR Commit (T i ) GR Abort (T i ) Restart Objectif Gestionnaire de cache Gestionnaire de Reprise Journalisation 15 / 51 16 / 51

Journalisation Journal historique des écritures dans la mémoire stable journal physique :listede[t i,x,v] préserve l ordre des écritures : fichier séquentiel souvent on stocke aussi l image avant de l écriture journal logique : opérations de plus haut niveau Ex. insertion x dans R et mise-à-jour index moins d entrées, mais plus di cile à interpréter autres informations : listes de transactions actives, validées, annulées Exemple : journal physique [T 1,x,2], [T 2,y,3], [T 1,z,1], [T 2,x,8], [T 3,y,5], [T 4,x,2], [T 3,z,6] c 1 a 2 c 4 liste active={t 3 } liste commit={t 1,T 4 } liste abort={t 2 } 17 / 51 18 / 51 Ramasse-miettes recyclage de l espace utilisé par le journal règle : entrée [T i,x,v]recyclée -T i annulée ou -T i validée, mais une autre T j validée a écrit x après T i 19 / 51 20 / 51

Stratégies pour la reprise Types de GR GR peut forcer ou non GC d écrire des cellules du Cache sur disque GR lance l annulation permet aux transactions non-validées d écrire sur disque Restart doit annuler ces écritures (annulation) GR lance la répétition permet aux transactions de valider avant d écrire sur disque Restart doit refaire ces écritures (répétition) 4 catégories de GR (combinaisons annulation - répétition) Règles défaire/refaire règles de journalisation, nécessaires pour que le GR puisse faire correctement annulation/répétition Règle défaire (pour annulation) : si x sur disque contient une valeur validée, celle-ci doit être journalisée avant d être modifiée par une valeur non-validée Règle refaire (pour répétition) : les écritures d une transaction doivent être journalisées avant son Commit Remarque : ces règles sont naturellement respectées si l on écrit dans le journal avant toute écriture dans la BD 21 / 51 22 / 51 Checkpointing Idempotence de Restart une panne peut interrompre toute opération, même Restart idempotence : Restart interrompu et relancé donne le même résultat que le Restart complet optimisation : journalisation des opérations de Restart pour ne pas tout recommencer 23 / 51 ajouter des informations sur disque en fonctionnement normal afin de réduire le travail de Restart point de contrôle ( checkpoint ) : point (marqué dans le journal) où l on réalise les actions supplémentaires Quelques techniques marquer dans le journal les écritures déjà réalisées/annulées dans la BD stable pas besoin de refaire/annuler ces écritures à la reprise marquer toutes les écritures validées/annulées dans la BD stable pas besoin de refaire/annuler à la reprise les transactions validées/annulées 24 / 51

Algorithme annulation/répétition Annulation/Repetition Annulation/Sans Repétition Sans Annulation/Repétition Principes GR qui demande annulation et répétition : le plus complexe écrit les valeurs dans le Cache et ne demande pas de Flush avantages : flexibilité, minimise I/O 25 / 51 26 / 51 Opérations GR-Write (T i,x,v) liste active = liste active {T i } si x n est pas dans le cache alors allouer cellule pour x journal = journal +[T i,x,v] cellule(x) =v confirmer Write à l ordonnanceur GR-Read (T i,x) si x n est pas dans le cache alors Fetch(x) retourner la valeur de cellule(x) à l ordonnanceur GR-Commit (T i ) liste commit = liste commit {T i } confirmer le Commit à l ordonnanceur liste active = liste active -T i GR-Abort (T i ) pour chaque x écrit par T i si x n est pas dans le cache alors allouer cellule pour x cellule(x) =image avant(x, T i ) liste abort = liste abort {T i } confirmer Abort à l ordonnanceur liste active = liste active - {T i } 27 / 51 28 / 51

Restart marquer toutes les cellules comme vides refait = {}, annulé = {} pour chaque [T i,x,v] journal (à partir de la fin) où x annulé refait si x n est pas dans le cache alors allouer cellule pour x si T i liste commit alors cellule(x)=v refait=refait {x} sinon cellule(x)= image avant(x, T i ) annulé=annulé {x} si refait annulé = BD alors stop boucle pour chaque T i list commit list active=list active-{t i } confirmer Restart à l ordonnanceur 29 / 51 Annulation/Repetition Annulation/Sans Repétition Sans Annulation/Repétition 30 / 51 Algorithme annulation/sans-répétition GR ne demande jamais répétition enregistre écritures avant le Commit GR-Write, GR-Read, GR-Abort pareil GR-Commit pareil, mais d abord : pour chaque x écrit par T i,six Cache alors Flush(x) Restart pareil, sauf que refait n existe pas Annulation/Repetition Annulation/Sans Repétition Sans Annulation/Repétition 31 / 51 32 / 51

Algorithme sans-annulation/répétition Algorithme sans-annulation/sans-répétition GR ne demande jamais annulation écritures des T i non-validées retardées après Commit GR-Write : ajoute juste [T i, x, v] au journal GR-Read : si T i adéjàécritx, lecture dans le journal, sinon dans la BD si T écrit x, les autres transactions ne peuvent lire x qu après la fin de T (exécution stricte) GR-Commit : chaque x écrit par T i est calculé à partir du journal et écrit dans le cache GR-Abort : juste ajoute T i à liste abort Restart : pareil, sauf que annulé n existe pas les écritures de T i réalisées sur disque en une seule opération atomique, au Commit 33 / 51 34 / 51 Introduction Reprise Stratégies Procédures RMAN Introduction Reprise Stratégies Procédures RMAN Types de pannes Normale Après une panne du système : reprise à chaud on a perdu la mémoire centrale mais pas la mémoire secondaire Après une panne de mémoire secondaire : reprise à froid perte de mémoire secondaire principe : - Reprendre les sauvegardes sur bande - Utiliser le journal s il est disponible panne catastrophique 35 / 51 36 / 51

Introduction Reprise Stratégies Procédures RMAN Exemple de situation Reprise à chaud : on réapplique le journal 3 sur BD3 pour défaire les transactions non validées Reprise à froid : si BD2 est endommagée, on reprend BD1 et on réapplique journal2 et Journal3 37 / 51 38 / 51 Recovery Manager Recovery Manager Outils standard spécialisé dans la sauvegarde et la restauration de données Cas de pertes de la base de données : définition des points de sauvegarde Sauvegardes : Contrôles : Outils standard spécialisé dans la sauvegarde et la restauration de données Cas de pertes de la base de données : définition des points de sauvegarde Sauvegardes : À froid (SGBD inactif) À chaud (SGBD en cours de traitements) De fichiers De bases entières Incrémentales Di é r e n t i e l l e s Contrôles : 39 / 51 39 / 51

Recovery Manager Possibilités Outils standard spécialisé dans la sauvegarde et la restauration de données Cas de pertes de la base de données : définition des points de sauvegarde Sauvegardes : À froid (SGBD inactif) À chaud (SGBD en cours de traitements) De fichiers De bases entières Incrémentales Di é r e n t i e l l e s Contrôles : Sauvegardes Restauration (blocs corrompus) 39 / 51 Simulation de restauration Évite les blocs vides car opération au niveau blocs de données Mode console Interfaçage avec di érent logiciels de sauvegarde 40 / 51 Sauvegardes Totales et Partielles Sauvegardes Catalogue Restauration Sauvegarde totale : Copie toutes les données backup database Sauvegarde partielle : Sous-ensemble sélectionné backup datafile / backup tablespace 41 / 51 42 / 51

Sauvegarde incrémentales Permet d échelonner des sauvegardes (alléger le SGBD) Besoin d une première sauvegarde (dites de niveau 0) RMAN> backup incremental level 0 database Toutes les autres sont dites de niveau 1 RMAN> backup incremental level 1 database Stockent les modifications depuis la dernière sauvegarde Sauvegarde incrémentales Permet d échelonner des sauvegardes (alléger le SGBD) Besoin d une première sauvegarde (dites de niveau 0) RMAN> backup incremental level 0 database Toutes les autres sont dites de niveau 1 RMAN> backup incremental level 1 database Stockent les modifications depuis la dernière sauvegarde 43 / 51 43 / 51 Sauvegarde incrémentales cumulatives Sauvegarde incrémentales cumulatives Sauvegarde des modificationss depuis le dernier niveau 0 RMAN> backup incremental level 1 cumulative database Perte en temps de sauvegarde, gain en temps de reprise Sauvegarde des modificationss depuis le dernier niveau 0 RMAN> backup incremental level 1 cumulative database Perte en temps de sauvegarde, gain en temps de reprise 44 / 51 44 / 51

Recovery Catalog Sauvegardes Catalogue Restauration Le catalogue de récupération est optionnel mais fortement recommandé Contient : Ensemble des sauvegardes Copies des fichiers de données Structure physique de la base de données Archives de logs Scripts de travail Doit être créé sur un serveur distinct 45 / 51 46 / 51 Gestion du catalogue Enregistrement de la base de données Création du schéma du propriétaire RMAN : SQL> CREATE TABLESPACE rman data datafile RMAN/rd.dbf size 50M; CREATE USER rman identified by toto DEFAULT TABLESPACE rman data; GRANT CONNECT, RESOURCE, RECOVERY CATALOG OWNER TO rman; Création du Catalogue RMAN : RMAN> create catalog tablespace rman data; Connexion à RMAN : RMAN> target u1/p1[@db] catalog u2/p2[@catalog] Enregistrement : RMAN> register database ; 47 / 51 48 / 51

Restauration Sauvegardes Catalogue Restauration Avant de restaurer, il faut mettre le tablespace cible o ine : RMAN> SQL ALTER TABLESPACE TOTO OFFLINE ; Puis lancer la dernière sauvegarde (en lien avec le catalogue) : RMAN> RESTORE TABLESPACE TOTO ; Puis relancer le tablespace : RMAN> SQL ALTER TABLESPACE TOTO ONLINE ; Restauration complète : RMAN> RECOVER TABLESPACE TOTO ; Restauration incomplète : set UNTIL TIME to date( 23/10/2012 12:00, DD/MM/YYYY HH24:MI ) ; 49 / 51 50 / 51 Informations Liste des di érentes sauvegardes : LIST BACKUP OF DATABASE; LIST BACKUP OF CONTROLFILE; LIST BACKUP OF SPFILE; LIST BACKUP OF TABLESPACE USERS; LIST BACKUP OF DATAFILE 1; LIST CTROLFILECOPY 1 51 / 51