Beruflich Dokumente
Kultur Dokumente
PART 4
Chapitre:
Gestion des fichiers de
journalisation
Les fichiers de journalisation
Les fichiers de journalisation (redo log) enregistrent toutes les modifications
apportées à la base de données (toutes les transactions). Ils sont organisés en
groupes écrits de manière circulaire ; les informations sauvegardées sont donc, par
défaut, périodiquement écrasées.
1 ONLINE C:\APP\CLAIRE\ORADATA\ORA11G\REDO01.LOG
2 ONLINE C:\APP\CLAIRE\ORADATA\ORA11G\REDO02.LOG
3 ONLINE C:\APP\CLAIRE\ORADATA\ORA11G\REDO03.LOG
2. Vous pouvez utiliser également la vue v$log pour avoir les informations sur les
fichiers de journalisation
SQL> desc v$log pour avoir la description de la vue
SQL> select group#, members, status from v$log;
Les comptes SYS et SYSTEM ont le rôle d'administrateur de base de données (DBA)
qui leur est attribué par défaut.
Le compte SYS:
Est accordé le rôle DBA
A tous les privilèges avec l’option administrateur «ADMIN OPTION»
Est requis pour le démarrage, l'arrêt et certaines commandes de maintenance
Possède le dictionnaire de données
Le compte SYSTEM est accordé le rôle DBA
Ces comptes ne sont pas utilisés pour les opérations de routine
Pour vous connecter au compte SYS, vous devez utiliser la clause AS SYSDBA pour
une base de données instance. Tout utilisateur qui a le privilège SYSDBA accordé
peut se connecter au compte SYS à l'aide de la clause AS SYSDBA.
Seuls les utilisateurs «privilégiés» qui bénéficient des privilèges SYSDBA, SYSOPER
ou SYSASM sont autorisés à démarrer et à arrêter des instances.
Le compte SYSTEM se voit attribuer le rôle DBA par défaut mais pas le privilège
SYSDBA.
Les comptes SYS et SYSTEM sont des comptes obligatoires dans la base de données.
Ils ne peuvent pas être abandonnés.
Il est impossible de supprimer l’utilisateur SYS car il est le super utilisateur. SYS
contient tous les utilitaires (les objets) qui permettent au système Oracle de
tourner correctement.
Liste de contrôle pour la création d'utilisateurs
NB: Pour vérifier la durée d’expiration des mots de passe utilisateur il faut exécuter la requête
SQL> Select * from dba_profiles where resource_name =‘PASSWORD_LIFE_TIME’
Modification du mot de passe
SQL> ALTER USER nom_utilisateur IDENTIFIED BY NouveauMotDePasse
Les rôles et privilèges sont définis pour sécuriser l'accès aux données de la base.
Ces concepts sont mis en œuvre pour protéger les données en accordant (ou
retirant) des privilèges a un utilisateur ou un groupe d'utilisateurs.
Un rôle est un regroupement de privilèges. Une fois créé il peut être assigné à un
utilisateur ou à un autre rôle.
Privilège Système
Syntaxe:
GRANT PRIVILEGE
TO user_name
[WITH ADMIN OPTION]
Exemple:
SQL> GRANT create table, create synonym, select any table
2 TO formation;
Lorsqu'un utilisateur est créé avec l'instruction CREATE USER, il ne dispose encore
d'aucun droit car aucun privilège ne lui a encore été assigné.
L'instruction GRANT permet d'octroyer les privilèges nécessaires à un utilisateur.
• Pour que l'utilisateur puisse simplement se connecter à la base, il doit bénéficier du
privilège système CREATE SESSION:
GRANT CREATE SESSION TO nom_utilisateur;
• Pour qu'il puisse créer des tables:
GRANT CREATE TABLE TO nom_utilisateur;
• Pour qu'il puisse créer des vues:
GRANT CREATE VIEW TO nom_utilisateur;
• L'ensemble de ces privilèges peuvent être assignés au sein d'une même
commande:
GRANT CREATE SESSION,CREATE TABLE ,CREATE VIEW TO nom_utilisateur;
Privilège Objet
Syntaxe:
GRANT PRIVILEGE ON nom_table
TO user_name
[WITH GRANT OPTION]
Exemple:
SQL> GRANT create table, create synonym, select any table
2 TO formation;
Pour assigner à un utilisateur le droit de sélectionner, insérer, modifier et
supprimer des lignes dans la table « nom_table" de l'utilisateur formation:
GRANT SELECT,INSERT ,UPDATE,DELETE ON nom_table TO formation;
On peut restreindre les droits sur des colonnes spécifiques de la table:
GRANT UPDATE ( Colonne1, Colonne2, Colonne3 ) ON nom_table TO formation;
Pour qu'un utilisateur puisse mettre à jour ou supprimer des lignes d'une table, les
privilèges UPDATE ET DELETE ne suffisent pas. Le privilège SELECT est nécessaire.
Création et gestion des rôles
La création d'un rôle permet d'assigner plusieurs privilèges à la fois à un utilisateur.
Trois rôles existent en mode standard:
- CONNECT: permet l'ouverture (CREATE SESSION) et la modification (ALTER SESSION) d'une
session, la création de tables, vues, clusters, séquences, synonymes et liens de bases de
données.
- RESOURCE: permet de créer des types, tables clusters, opérateurs, séquences, index et
procédures.
- DBA: octroie des droits d'administration de la base.
Lorsque le rôle est créé, il ne contient rien et il faut l'alimenter à l'aide d'instructions GRANT:
SQL> CREATE ROLE caissiere;
SQL> grant create session, select any table, create synonym
2 to cassiere;
Autre méthode:
Il consiste à créer un utilisateur et lui affecter un rôle
SQL> GRANT cassiere
2 TO fatou
3 IDENTIFIED BY oracle123;
Une fois le rôle créé, il peut être assigné à un utilisateur ou à un autre rôle.
GRANT cassiere TO formation;
Un rôle peut être supprimé en utilisant l'instruction DROP ROLE:
DROP ROLE caissiere;
Le rôle spécifié ainsi que tous les privilèges qui lui sont associés sont supprimés de
la base et également retiré à tous les utilisateurs qui en bénéficiaient.
Gestion des profils
Un profil est un ensemble de limitations système. Une fois qu'un profil a été
assigné à un utilisateur celui-ci ne pourra plus dépasser les limitations imposées. Il
existe deux types de limitation pour un profil:
- Les limitations du mots de passe
- Les limitations des ressources système
1. Sauvegarde complète:
Consiste à copier l’ensemble des données dans leur état actuel, sans tenir
compte des sauvegardes déjà réalisés au préalable.
Temps de sauvegarde élevé (long), on copie 100% des données à chaque fois.
Gain de temps à la restauration parce qu’aucune reconstruction n’est nécessaire
parce que chaque version de sauvegarde contient l’ensemble des données dans
l’état où elles doivent être restaurées.
2. Sauvegarde différentielle:
Consiste à copier les données créées ou modifiées depuis la dernière
sauvegarde complète.
3. Sauvegarde incrémentale:
Consiste à copier les données créées ou modifiées depuis la dernière
sauvegarde quelque soit son type. Temps de sauvegarde très rapide. Prend en
compte que les changements depuis la dernière sauvegarde.
La restauration prend beaucoup de temps car il faut reconstruire les données
en restaurant la dernière complète puis rejouer les incrémentales jusqu’au
point de restauration souhaité.
Modes de sauvegarde
Il y a 2 modes de sauvegarde.
1. Sauvegarde à froid: réalisée lorsque l’application est arrêtée, ce qui permet
d’effectuer une sauvegarde de ces données durant la sauvegarde.
Qu’est ce qu’il faut sauvegarder?
V$datafile, V$logfile, V$controlfile, V$tempfile sont les vues qui nous
permettent d’identifier l’ensemble des fichiers à sauvegarder.
Etapes:
Arrêter la base
Copier l’ensemble des fichiers de la BD
Démarrer la base
Fichiers de données
• Sauvegarde avec le SE sur un chier OFFLINE
• Si le chier est ONLINE : on le "protège" avec les commandes BEGIN /END
BACKUP
Fichiers de contrôle
• Commande ALTER DATABASE
Média de sauvegarde:
1. Bande: système de stockage sous forme de cassettes contenant une bande
magnétique.
2. Coté serveur on a 2 cas:
Serveur physique: un agent est installé sur l’OS du serveur dont les données sont à
sauvegarder. Communique avec le serveur, sauvegarde via LAN ou SAN
Serveur virtuel: sauvegardé via les snapshot, l’agent de sauvegarde n’est pas installé
au niveau de l’OS mais au niveau de l’hyperviseur.
Snapshot: permet de capter l’état entier de la machine à un instant T, celui-ci
comprend le contenu de la mémoire de la machine virtuelle ainsi que ses paramètres
et l’état des disques virtuels (fichiers VMDK). Snapshots permettent de créer des
position de restauration pour revenir dans le temps. Le serveur de sauvegarde envoi
ensuite les données au lecteur de bandes et écrit les données sur des cassettes via
ses lecteurs.
Les cassettes peuvent être stockés soit sur des lecteurs temporaires, soit
récupérés pour être stockés ailleurs manuellement.
3. VTL (Virtual Tab Libary):
Système de stockage composé d’un ensemble de disque durs et d’un logiciel
permettant d’émuler l’espace disque en bande magnétique, donc vu comme un
lecteur de bande par le serveur de sauvegarde.
VTL reçoit les données du serveur de sauvegarde et les stock sur ses disques
dur. Il peut ensuite externaliser les données:
Soit par réplication de données vers une autre VTL
Soit en écrivant sur des lecteurs de bandes. VTL agit comme un tampon entre
serveur de sauvegarde et les bandes.
La déduplication
• Ouvrir la base
• Désactiver les tablespace (offline)
• Réparer la panne disque
• Restaurer seulement les fichiers endommages
• lancer la restauration
• RECOVER TABLESPACE/DATAFILE
• Activer le tablespace
RMAN (Recovery Manager)
NB:
NB: