Administration d'une BD cours
![Administration d'une BD cours](/images/remos_downloads/id-2625.2625.pdf_thumb_prev.jpg)
Administration d'une BD cours pdf
...
Les métiers autour des bases de données
Administrateur
Responsable de la sécurité
Administrateur réseaux
Développeurs d’application
Administrateurs d’application
Utilisateurs : modifier les données, créer des rapports
Note
Dans des environnements de petite taille, l’administrateur peut
jouer quasiment tous les rôles
Rôles du DBA
Installer les logiciels Oracle
un serveur, des applications clientes,
En fonction de l’OS et des param`etres systèmes
Si fonctionnement en réseau : composants r´eseaux d’Oracle
Planifier et créer des bases de données
Gérer l’espace et implanter les schémas des données
Assurer la sécurité, l’intégrité et la pérennité des données
Effectuer des réglages pour optimiser les performances
...
Les principales tâches d’un administrateur d’une base de données sont les suivantes:
- Installation et mise à jour du noyau serveur et des outils d'application
- Planification des ressources de mémorisation des données
- Organisation des structures logiques et physiques des données
- Création et gestion des utilisateurs et de leurs droits d’accès (privilèges)
- Gestion et optimisation des performances du système
- Gestion de la sécurité du système: gestion des accès concurrents
- Gestion de la sécurité du système: sauvegardes, restaurations et archivages de la base* Gestion de bases de données réparties Les autres utilisateurs assurent les tâches suivantes:
Développeurs d’application:
- Conception et réalisation d’une application
- Conception de la structure de la base de données
- Evaluation des besoins en ressources de mémorisation
- Optimisation des performances de l’application
- Etablissement des mesures de sécurité
Utilisateurs d’application
- Saisie, modification et suppression de données
- Génération des états de sortie
Pour réaliser les tâches qui lui sont dévolues, l’administrateur de la base dispose
- de deux comptes spéciaux: SYS et SYSTEM créés en même temps que la base de données.
SYS est propriétaire des tables et des vues du dictionnaire de données. Ces tables et ces vues, essentielles pour le fonctionnement du serveur, ne peuvent être modifiées que par Oracle7 luimême.
SYSTEM crée les tables et les vues qui fournissent les informations nécessaires à l'administration du sytème; il crée les tables et les vues utilisées par les outils Oracle.
SYS et SYSTEM possèdent le rôle OSDBA; ils disposent de tous les privilèges Système qui leur permettent d'exécuter toutes les opérations nécessaires au fonctionnement d'une instance. * d’outils spécifiques:
a/SERVER MANAGER:outil d’administration et de contrôle de la base de données
qui permet de
- démarrer et arrêter une instance
- monter, démonter, ouvrir et fermer une instance
- contrôler en temps réel l’utilisation et les performances du serveur
- réaliser des sauvegardes et des restaurations* exécuter des commandes SQL et PL/SQL
Server manager est appelé par les commandes:
- svrmgrl : mode caractères
- svrmgrm: mode graphique (motif)
... ...
ARCHITECTURE D’UNE BASE DE DONNEES
Une instance est constituée de trois types d'éléments:
-System Global Area (SGA): ensemble des buffers nécessaires à la gestion des transactions
-Process: ensemble des processus Système et des processus Utilisateurs
-Files: ensembles des fichiers contenant les informations
I-SYSTEM GLOBAL AREA
Oracle crée et utilise des structures mémoire rassemblées dans la System Global Area (SGA), partagées par les différents utilisateurs.
La SGA et les processus background constituent une instance; l’espace mémoire nécessaire à la SGA est alloué au démarrage d’une instance et est restitué à la fermeture de cette instance. Les données de la SGA sont partagées par l’ensemble des utilisateurs connectés à un moment donné; elles sont divisées en plusieurs types de buffers:
- Data base Buffer Cache: Il contient les blocs de données, les blocs d’index,des blocs contenant les ROLLBACK SEGMENTS et des blocs pour la gestion du système, les plus récemment utilisés; il peut contenir des données modifiées qui n’ont pas encore été enregistrées sur disque.
- Redo Log Buffer: Il contient les redo entries (toutes les données avant leur mise à jour,toutes les modifications effectuées sur ces données,la trace de toutes les transactions validées ou non encore validées),ensemble des modifications réalisées sur la base; ces redo entries sont mémorisées sur un redo log file, qui pourra être utilisé en cas de panne.
- Zone de partage des ordres SQL: cette zone est utilisée pour mémoriser,analyser et traiter les ordres SQL soumis par les utilisateurs
II-LES PROCESSUS
Une base Oracle contient deux types de processus:
- User Process
- Oracle Process
Un User Process est créé et maintenu pour exécuter le code d’un programme applicatif (ex:application Oracle Forms) ou d'un outil Oracle (ex: Server Manager); le User process communique avec les Process Server à travers le programme interface.
Les Oracle Process sont divisés en deux catégories:
- Process Server qui prennent en charge les demandes des utilisateurs
Le Process Server est responsable de la communication entre la SGA et le Process User; il analyse et exécute les ordres SQL, lit les fichiers DATABASE et ramène les blocs de données en SGA, retourne le résultat au Process User.
Oracle peut être configuré de deux façons:
- avec un dedicated server, un server process traite les requêtes d'un seul user process
- avec un multi-threaded server, plusieurs user processes se partagent un petit nombre de server processes, minimisant le nombre de server processes et maximisant l'utilisation des ressources système.
* Background Process qui prennent en charge les mécanismes internes d’Oracle
Ils ont pour nom ora_processname_SID
DataBase Writer (DBWR):écrit les blocs modifiés de la base dans les fichiers Datafile, d'une manière désynchronisée par rapport aux transactions, en utilisant une LRU list
Log Writer (LGWR): écrit le contenu du buffer Redo Log de la SGA dans le fichier Redo Log en ligne lors d'un COMMIT
Checkpoint (CKPT): signale au DBWR la nécessité d'un CHECKPOINT et trace cet évènement dans les fichiers de contrôle et dans les en-têtes des fichiers Datafile. Il est facultatif; s'il est absent il est suppléé par LGWR.
System Monitor (SMON): il rétablit la cohérence du système après un incident et libère les ressources utilisées par le système
Process Monitor (PMON): il récupère les anomalies des process USER; il supprime les process en erreur, annule les transactions non validées, libère les verrous, libère les ressources utilisées dans la SGA. Il contrôle également les dispatchers et les process serveurs.
Archiver (ARCH): il recopie les fichiers redo log pleins sur un fichier archive pour pallier une perte éventuelle d’un fichier DATABASE (optionnel,existe en mode ARCHIVELOG uniquement)
Recoverer(RECO): il est utilisé pour résoudre les transactions interrompues par une panne dans un système de bases de données distribuées
Dispatcher(Dnnn): processus présent dans une configuration multi-threaded. Il y a au moins un de ces processus pour chaque protocole de communication. Il dirige les requêtes d'un utilisateur vers un serveur partagé et lui renvoie ses requêtes.
Lock(LCKn): de 1 à 10 processus de verrouillage peuvent être utilisés lorsque Oracle Parallel Server est installé.
Le programme Interface
C’est un mécanisme par lequel un programme utilisateur communique avec le server process; il est utilisé comme une méthode de communication standard entre un client et Oracle. Il agit comme un mécanisme de communication en formattant les données, transférant les données, interceptant et retournant les erreurs. Il réalise les conversions de données, en particulier entre différents types d’ordinateurs ou avec des données de programmes externes.
III-LES FICHIERS
Il existe quatre types de fichiers
- Fichiers Datafile
- Fichiers Redo Log
- Fichiers Control
- Fichiers Archivage
Fichiers Datafile
Ils contiennent toutes les données de la base; toutes les structures logiques et physiques y sont stockées (tables, index, rollback segments). Ils possèdent les caractéristiques suivantes:
- un fichier Datafile peut être associé à une seule base de données
- les fichiers Datafile ont un ensemble de caractéristiques qui permet de leur allouer automatiquement une extension en cas de dépassement de capacité
- un ou plusieurs Datafiles forment une unité logique appelée tablespace, présentée au chapître 3.
- un fichier Datafile est constitué d’un ensemble de blocs dont la taille dépend du sytème d’exploitation.
Les nouvelles données et les données modifiées ne sont pas nécessairement écrites immédiatement sur un fichier Datafile; afin d'optimiser les performances du sytème, elles sont mémorisées dans la SGA et sont écrites périodiquement sur les fichiers Datafile par le process DBWR.
Fichiers Redo Log
Ils contiennent toutes les données modifiées et sont utilisés en cas de perte des fichiers Datafile; ils sont au minimum deux et ont un fonctionnement circulaire. Ils peuvent être utilisés de façon unique ou multiplexée:
- Façon unique: un seul fichier Redo Log est en service à un moment donné; quand un fichier est plein, le deuxième est mis en service; les modifications ne sont stockées qu’une seule fois.
- Façon multiplexée: plusieurs groupes de plusieurs fichiers Redo Log sont en service et mis à jour simultanément.