Version Description Date

Dimension: px
Commencer à balayer dès la page:

Download "Version Description Date"

Transcription

1 - 1 - Telephone : , Site internet : Numéro du document : 0.4 Auteur : Danny Nkutua Kalombo Date de publication : Septembre 2010 Dernière mise à jour : Avril 2012 Résumé des modifications : Version Description Date 0.1 (Danny Nkutua) 0.2 (Danny Nkutua) 0.3 (Danny Nkutua) Version initiale. Clarification des textes et autres détails. Ajout des captures d écrans, détails sur les commandes SQL*PLUS et retouche sur la présentation dans son ensemble. Septembre 2010 Novembre 2010 Décembre (Danny Nkutua) Mise à jour avec Oracle 11g, correction générale et ajout des détails dans les concepts théoriques. Avril 2012 Droits d auteurs : Aucune partie de cet ouvrage ne peut être reproduit, transcrit, transmit ou traduit dans une autre langue dans n importe quelle forme que ce soit électronique, magnétique, optique, manuelle sans la permission écrite de l auteur sous peine des poursuites judiciaires conformément à la loi congolaise (RDC) des droits d auteurs. Pour tout contact avec l auteur : , Editeur : Stella Publising

2 - 2 - À Berlishe, Nahomie et Benitan. Vos sourires m ont permis de continuer -Danny

3 - 3 - Remerciements Nous ne saurions publier cet ouvrage sans pour autant remercier toute l équipe NSAT Technologies pour son soutient lors de la première publication. Nous tenons également à remercier tous ceux qui de près ou de loin ont contribué à cette version corrigée. Je citerais l Assistant Selain KASEREKA avec qui nous avons initié ce projet de formation, Allain KATAKU pour la disponibilité de ses documentations, Chicco BADIBANGA pour son soutient pendant mes premiers pas avec Oracle, Daniel KALONJI pour ses lectures et corrections, Christian BOPE pour l environnement de son entreprise lors de mes premiers pas. A toi aussi Si vous avez une quelconque question ou commentaire à propos de cet ouvrage, n hésitez pas à me contacter personnellement sur admin@dba-rdc.org ou dnkutua@gmail.com.

4 - 4 - Pourquoi devenir DBA? Commençons par le commencement. Dans une entreprise, vous trouverez certainement toutes sortes d informaticiens qui manipulent à la perfection les bases des données (les ingénieurs systèmes, les développeurs, les techniciens de supports aux applications, etc.). Dans un tel environnement, on pourrait bien se demander à quoi bon vouloir se spécialiser dans le domaine des bases de données? Réfléchissions encore. Tout le monde ne développe pas des applications Java, Python ou C# par exemple, ni ne configure des routeurs Cisco et encore moins n élabore les plans des projets. Toutefois, presque tout le monde manipule les bases de données d une manière ou d une autre. La conclusion à notre réflexion semble d une évidence certaine : un développeur, un administrateur réseau, un software security officer, un administrateur des projets, un technicien de support et même un encodeur possède une zone d activité où il règne en maître, excepté l administrateur de base de données (Data Base Administrator ). Cette réflexion n est pas fausse, quoiqu elle mérite une certaine rectification. Voyons pourquoi les DBA sont toujours là alors qu ils semblent ne rien faire de spécial surtout que dans la plupart du temps, après quelques vérifications matinales, ils passent le reste de la journée à la lecture, correction des quelques scripts et ouf, facebook, twitter, google+ ou je ne sais quoi d autres. Bon, répondons à présent à la question fondamentale de savoir pourquoi devenir DBA? à cela, nous allons y répondre par une métaphore. Actuellement les avions les plus sophistiqués sont de plus en plus facile à manipuler. Ceci grâce aux systèmes de pilotage automatique. De ce fait, vous pouvez piloter un avion après un après midi de formation. C est simple du fait que la machine accomplit 95% du boulot tout seul. Pourtant, pourquoi faut-t-il des hautes études aéronautiques pour devenir pilote qualifié? Quand tout va bien dans un avion, vous ne voyez certainement pas pourquoi applaudir à l atterrissage pour des pilotes qui ont passé tout leur temps à bavarder bien au frais dans leurs cabines! Dans le cas contraire, quand les choses tournent mal, c est la panique dans l avion. Il y a alors une évidence : une mauvaise manipulation de la part du pilote peut coûter la vie à tous les passagers. Dans une telle situation, le choix entre un nouveau pilote et un pilote qualifié et expérimenté se fait ressentir. J imagine la scène, tous les passagers prient pour que le pilote leur rassure

5 - 5 - que le désagrément est mineur, qu il a déjà connu ce genre de problème et qu il sait comment s y prendre. C est exactement la même chose avec le DBA, c est quand les autres n arrivent pas à avoir les réponses à leurs requêtes, quand le serveur arrête de fonctionner brusquement, quand les procédures ne tournent plus, quand des messages incompréhensible s affichent à votre écran alors qu aucune manipulation spéciale n a été faite, quand vous n arrivez pas à vous connecter avec votre mot de passe que vous avez utilisé il y a de cela 5 minutes, quand votre bouton à cliquer n est plus cliquable, pfff, quand vous êtes vous ne savez prendre votre pieds avec la base de données C est dans des telles situations que les développeurs, les administrateurs réseau et systèmes, les financiers, les comptables, les managers et tout autre agent se rendent compte qu il faut appeler la personne qui d apparence ne semble rien faire de spécial et pourtant sans qui rien ne peut se faire : moi, le DBA. Ainsi, dans la suite de cet ouvrage, nous allons apprendre à devenir et à avoir les reflexes de ce pilote qui sait résoudre les problèmes sans que les passagers ne s en rendent compte. Qu ils continuent à croire que nous ne faisons rien, c est le boulot d un DBA que de veiller à ce que les autres ne se rendent même pas compte de tout ce qui arrive au système même en cas de problème. Un DBA d avoir être proactifs. Le système doit rester accessible quelque soit les circonstances et ce, dans la plus grande ignorance des utilisateurs. C est pour cette raison que j ai lu des dizaines des livres manuscrits, des centaines des documentations électroniques, je me suis abonné à des dizaines des clubs des DBA Oracle, j ai effectué des milliers des tests, assuré volontairement le support DBA dans des environnements réels de production, passé des milliers des heures devant des serveurs Oracle, animé des formations et séminaires parfois bénévolement, Pour finalement devenir un DBA Oracle. Connaissez-vous une entreprise sans DBA? Quelque soit votre expérience avec Oracle (Administrateur, développeur, utilisateur, etc.), il est important de vous mettre continuellement à jour avec les nouvelles versions qui apportent leurs lot de facilitation des tâches en modifiant quelque fois l architecture même du serveur. L expérience étant la clé d or des compétences d un DBA, vous devez apprendre à surmonter les problèmes et vous affilié à des administrateurs expérimentés sans pour autant négliger les lectures et partage des connaissances.

6 - 6 - Notons également que pour ceux qui désirent passer la certification (source de crédibilité et assurance d un salaire au dessus d une certaine limite), les désignations anglaises des composants sont obligatoires (ne vous conformez pas au français si vous désirez passer la certification, je sais de quoi je parle ).

7 - 7 - A qui s adresse cet ouvrage? Tel que structuré et présenté, cet ouvrage s adresse principalement aux administrateurs de bases de données qui veulent migrer vers une solution Oracle ou même ceux qui veulent prendre Oracle comme leur premier environnement d administration des bases de données. En second lieu, il s adresse aux développeurs, administrateurs systèmes, tout curieux de la science et particulièrement des bases de données. Toutefois, il est essentiellement axé vers une politique de migration vers le système de gestion de base de données Oracle (dans sa version 11g Release 1). Il est donc important que le lecteur ait au préalable certaines connaissances dans les bases de données, précisément sur le modèle relationnel et le langage SQL. Néanmoins, en séance préparatoire de la formation, nous balayons les notions de conception et implémentation d une base de données sous MERISE pour une bonne entrée dans la matière. Comme tout domaine technique, la théorie est certes importante à la compréhension, mais seul la pratique et la détermination fera de vous un As des bases de données Oracle.

8 - 8 - Il y a dans l'homme quelque chose de supérieur. C est la volonté E. RENAN Copier sur un, c'est du plagiat. Copier sur deux, c'est de la recherche W. MIZNER Rien ne peut arrêter un homme qui a de la volonté. 3 ARCHITECTURE ORACLE Au cours de cette troisième partie, qui constitue le chapitre clé de notre formation, nous apprendrons essentiellement les points suivants. Nous vous recommandons vivement de prendre votre temps afin de très bien vous intégrer et comprendre l architecture Oracle qui est le fondement de notre cours : III.1. Architecture III.1.1. Le monobloc III.1.2. Le client/serveur III.2. Structure de la base Oracle III.2.1. Base de données et instance III.2.2. Structure physique et logique III.3. Instances III.3.1. Introduction III.3.2. Les mémoires Oracle III.3.3. Les processus d arrière plan III.3.4. Processus de traitement d une requête Oracle Tuning III.4. Les droits et privilèges III.5. Le middleware Oracle Net III.5.1. Rappel sur l architecture Client/Serveur III.5.2. Le middleware ou médiateur III.6. Le processus d écoute ou Listener Oracle III.6.1. Introduction III.6.2. Connexion utilisateur à la base de données

9 - 9 - III. ARCHITECTURE ORACLE 10g III.1. Architecture Comme toute base de données professionnelle, Oracle peut fonctionner selon deux architectures principales : le monobloc et le client/serveur. III.1.1. Le monobloc Dans une telle architecture, toutes les ressources sont concentrées autour d une machine qui héberge les applications ou ressources dont ont besoin les décideurs. Cependant, cette machine ne peut être accessible que par une connexion directe et on ne peut donc y avoir accès à distance. Utilisateur travaillant Sur le serveur physique Utilisateur distant Figure : un système en monobloc avec accès distant inexistant. III.1.2. Le client/serveur Dans cette seconde architecture, nous distinguons deux variantes que nous allons explorer ci-dessous : le client/serveur simple et le multi tiers. III Le client/serveur simple Pour illustrer ce type d architecture, prenons exemple de ce que nous voyons dans les boîtes de nuit (pour ceux qui les fréquentent ) et même dans nos terrasses publiques. Le serveur prend les commandes des clients et les sert si leurs demandes correspondent à ce que la maison offre sinon il demande aux clients de changer leurs commandes en leur proposant quelque chose de similaire à leurs demandes.

10 L architecture clients/serveur Oracle fonctionne de la manière similaire. Les applications clientes envoient des requêtes SQL (PL/SQL) à un serveur qui analyse ces requêtes et retourne les réponses aux utilisateurs si les requêtes sont claires et ont un sens (analyse sémantique et syntaxique autrement dit le parsing) et dans le cas contraire un message d erreur est envoyé à l utilisateur qui pourra alors corriger sa requête et la relancer convenablement. La communication entre les clients et le serveur s effectue en conséquence par un jeu des questions et réponses illustré comme suit : Requête Client Réponse Réponse Requête Serveur de base de données Client Figure : le client/serveur échangeant questions et réponses. Notons cependant qu un serveur peut fonctionner soit en mode dédié, soit en mode partagé. La distinction entre un serveur dédié et un serveur partagé sera abordée en détails dans la suite de ce chapitre. Cependant, notons que dans le cas d un fonctionnement en mode dédié, chaque processus client est servi par un et un seul processus serveur pendant toute la durée de la communication alors dans un fonctionnement en mode partagé, un seul processus serveur s occupe d un certain nombre des processus clients. Le mode partagé est très recommandés dans un environnement où l on a un nombre important des clients très légers tel dans un environnement purement transactionnel alors que le mode dédié est recommandé dans un environnement où les clients sont lourds et à faible quantité comme c est le cas dans les entrepôts des données (data warehouse).

11 Client Client Processus serveur unique Client Serveur de base de données Client Figure : serveur en mode partagé où les clients se partagent les mêmes ressources serveurs. Client Processus serveur 1 Processus serveur 2 Client Processus serveur 3 Client Serveur de base de données Figure : serveur en mode dédié où chaque client à ses propres ressources au niveau du serveur. III Le Multitier Toujours dans notre illustration des terrasses publiques, il arrive des cas où les clients deviennent tellement nombreux au point qu il n y a plus assez des serveurs pour que chacun d eux s occupe spécialement d un client. Dans ce cas, le serveur reste dans le bar et un garçon de cours peut vite récupérer les commandes des clients, les amener aux serveurs et vas de nouveau récupérer les autres commandes et ainsi de suite. Une fois le serveur prêt, il lui remet les plats ou boissons commandé avec le numéro de la table. Le garçon ne sait pas où le serveur trouve ces plats et boissons et même comment il les prépare. Son boulot est simplement de récupérer les commandes des clients, les amener au serveur en indiquant le numéro de la table et une fois prêt le serveur lui dépose les plats et boissons pour aller servir les clients. Il allège donc les tâches du serveur.

12 Dans Oracle, les choses se passent également de la même façon, des serveurs d applications allègent la charge du serveur de base de données en réalisant certains accès pour les clients comme le montre la figure suivante. Cette architecture est dite multi tiers (dans le cas de la figure, c est du 3 tiers) suite au fait qu il y a plusieurs entités qui entrent en jeux (dans le cas de la figure, il y a trois entités : le client [les clients de la terrasse], le serveur d application [le garçon qui aide le serveur] et le serveur de bases de donnés [le serveur/cuisinier de la terrasse]). Client Client Serveur d applications Serveur de base de données Client Figure : le multitier (3 tiers). III.2. Structure de la base Oracle III.2.1. Base de données et instance Il nous convient de bien faire la distinction entre une base de données et une instance Oracle. Une base de données Oracle est composée d un certaines nombre des fichiers comme nous le verrons tout de suite alors qu une instance Oracle est composée de la base ainsi que des processus qui permettent de la modifier, le tout chargé en mémoire. Vu l importance de cette distinction, expliquons le par un exemple : Lorsque nous voulons modifier un document texte, que faisons nous? Nous allons dans le fichier texte en question, puis nous l ouvrons (c'est-à-dire que nous le chargeons en mémoire) et enfin nous le modifions. Le fichier physique sur le disque peut être considéré comme la base de données Oracle et le fichier ouvert ou chargé en mémoire peut être considéré comme l instance Oracle. On ne peut donc parler d instance que si les fichiers sont chargés en mémoire pour une manipulation quelconque. Comme on ne peut modifier le fichier physique qu en l ouvrant, on ne peut modifier une base Oracle qu au travers de son instance. L instance Oracle est donc constituée des fichiers physiques, les différentes zones mémoires, ainsi que les processus qui permettent de travailler sur ces fichiers.

13 III.2.2. Structure physique et logique Une base de données Oracle a une structure logique et une structure physique parfois totalement distinctes. La structure physique d une base Oracle concerne les différents fichiers physiques qui contiennent les données et informations de la base alors que la structure logique concerne le mode de stockage des données physique par Oracle. III Structure de stockage physique Physiquement, une base de données Oracle est essentiellement composée de trois types de fichiers qui sont les suivants : les fichiers de contrôles (control files), les fichiers de données (data files) et les fichiers des journaux (redo log files). Les fichiers de base de données sont des fichiers binaires et ne peuvent pas être lus ou modifiés sans passer par Oracle. Dans la figure suivante, les fichiers à l intérieur du grand rectangle Base de données sont les fichiers essentiels qui constituent une base de données Oracle. D autres fichiers sont utiles au fonctionnement du serveur Oracle sans pour autant faire parti (techniquement) de la base de données, il s agit par exemple de : s de mot de passe ; de paramètres d initialisation.ora (pfile ou spfile) ; d alerte ; s de sauvegarde (créés par RMAN ou manuellement par le DBA) ; Les fichiers de journalisation archivés (archivelog). Base de données de mot de passe De controle De données journaux s journaux archivés paramètre Figure : les fichiers physiques de la base de données Oracle.

14 a. Les fichiers de données Ces fichiers contiennent toutes les informations de votre base de données dans un format spécifique à Oracle. Le seul et unique moyen pour accéder et manipuler des données stockées dans Oracle est d utiliser le langage SQL. Comme expliqué précédemment, on ne peut modifier les fichiers de données que via l instance. Les fichiers de données sont les plus volumineux de votre base ; leur dimension dépend de la quantité d informations à stocker. Il est fréquent qu un administrateur Oracle intervienne sur ces fichiers qui portent l extension.dbf. b. Les fichiers de contrôle Ce sont des fichiers binaires contenant des informations sur tous les autres fichiers constitutifs d Oracle ainsi que sur l instance. Ils décrivent entre autre leur nom, leur emplacement, leur taille etc. Ils sont principalement utilisés au démarrage de la base de données, contiennent des informations sur l état de la base et sur sa cohérence, ils indiquent si la base a été correctement fermée et si une restauration est nécessaire. Ils sont mis à jour automatiquement par Oracle. Pour des raisons de sécurité, il est recommandé de créer plusieurs fichiers de contrôles (multiplexage) sur des disques différents, mais ceux-ci sont tous identiques. Lorsqu une instance est lancée pour ouvrir une base de données, le fichier de contrôle est le premier fichier ouvert. Il permet ensuite à l instance de localiser et d ouvrir les autres fichiers de la base de données. Si le fichier de contrôle ne peut être trouvé (ou endommagé), la base de données ne peut être ouverte, même si les autres fichiers sont présents. Dans ce cas, différents niveau de restauration sont possibles en fonction de la situation (voir le module de formation DBA Associate 2). Pour ces raisons, il est vivement conseillé de multiplexer le fichier de contrôle, les différentes copies seront gérées en miroir par Oracle. Le multiplexage des fichiers de contrôle peut être spécifiés lors de la création de la base ou ultérieurement comme nous le verrons dans nos séances pratiques. c. Les fichiers journaux Les fichiers journaux (redo-log) sont des fichiers qui conservent toutes les modifications successives de votre base de données. L activité des sessions qui interagissent avec Oracle est consignée en détail dans les fichiers journaux. Ils sont utiles lors d une restauration à la suite d un problème quelconque. Cette restauration consiste à reconstruire le contenu des fichiers de données à partir de l information stockée dans les fichiers journaux.

15 Les fichiers de journalisation sont organisés en groupes (au minimum 2) composés d un ou de plusieurs membres (minimum un) ; ils sont crées lors de la création de la base. A l intérieur d un groupe, les membres sont écrits simultanément en miroir par l instance Oracle et contiennent la même information. Tous les membres d un groupe ont la même taille définie lors de la création du groupe ; un fichier de journalisation contient donc une quantité maximale d informations. De même, le nombre de groupes est déterminé à la création de la base et ne peut être modifié par la suite. Lorsqu un groupe est plein, l instance Oracle passe au groupe suivant et ainsi de suite jusqu au dernier ; lorsque le dernier groupe est plein, l instance repasse au premier. Le passage d un groupe à un autre est appelé basculement. Le cercle orienté de la figure suivante traduit l écriture en cycle dans les fichiers de journalisation. Groupe des fichiers de journalisation Figure : l écriture circulaire dans les fichiers de journalisation. Outre ces trois types de fichiers obligatoires, Oracle dispose d autres types des fichiers dont certains méritent qu on s y connaisse surtout en cas de problème. d. Le fichier d initialisation Ce fichier est important car il permet le démarrage de l instance. Au démarrage de l instance, Oracle lit ses paramètres dans ce fichier dit fichier démarrage ou d initialisation. Les paramètres lus concernent entre autre la mémoire allouée aux différentes structures, le nom et l emplacement des fichiers de contrôle de la base à ouvrir etc. Historiquement, ce fichier était du type texte (init.ora), mais depuis la version 9, il est possible d utiliser un fichier de paramètres binaire stocké sur le serveur (SPFILE = Server Parameter File). Le fichier init.ora est un fichier éditable avec un éditeur simple de textes, les modifications y effectuées sont prise en compte lors du redémarrage de la base. Par contre les fichiers spfile sont modifiés avec la commande ALTER SYSTEM. Comme nous le verrons dans nos ateliers pratique, on peut crée un spfile avec l assistant de création de base de données (DBCA, Data Base Configuration Assistant) ou à

16 partir d un fichier init.ora existant avec la commande CREATE SPFILE. Ces fichiers se trouvent dans %ORACLE_HOME%databasespfile%. e. d alerte et trace Oracle dispose d un fichier où il inscrit tout type d erreurs et événements qui surviennent à la base de données (création de la base, démarrage et arrêt, modification de la structure, erreurs interne, problème lié à l archivage des fichiers de journalisation, etc.). Ce fichier doit être fréquemment consulté par l administrateur de base de données pour suivre l évolution de la base. Le nom du fichier des alertes est de la forme alert_<sid>.log, le nom des fichiers de trace des processus d arrière plan est de la forme <sid>_<nom_processus>_<id_processus>.trc, et finalement, le nom des fichiers de trace des processus serveur est de la forme <sid>_ora_<id_processus>.trc. S il faut faire la différence entre ces deux fichiers, disons que les fichiers trace enregistre toutes les activités des processus alors que le fichier alerte enregistre tous les erreurs survenues dans le fonctionnement du système, y compris ceux liées aux erreurs des processus. Remarque Il est sérieusement conseillé de purger régulièrement le fichier d alerte pour éviter qu il ne soit trop volumineux ; le mieux serait même de l archiver à intervalle de temps réguliers pour garder l historique de la vie de la base de données. Vous pouvez cependant supprimer ou renommer le fiche d alerte sans crainte ; Oracle le recréer alors qu il en aura besoin. III Structure de stockage logique Comme dit plus haut, outre le stockage physique des données, Oracle dispose d une structure logique pour le stockage des données. La structure logique spécifie la manière dont les données sont enregistrées dans la base. Selon cette structure, en allant d un ordre croissant de la plus petite unité vers la plus grande, nous avons les éléments suivants : bloc du système d exploitation, bloc Oracle, Extents, Segments et Tablespace. La figure suivante illustre la relation qui existe entre ces différents éléments que nous expliquons dans les lignes qui suivent :

17 Base de données STRUCTURE PHYSIQUE Schéma Tablespace Table, Index, Cluster,... STRUCTURE LOGIQUE Bloc Oracle Bloc OS Figure : Structure de stockage logique. a. Blocks La plus petite unité de stockage dans une base de données Oracle est appelée block (ou data block). La taille d un bloc est généralement un multiple de la taille du bloc du système d exploitation, cela pour faciliter les opérations d entrée/sortie dans les disques et le chargement des données en mémoire. La taille par défaut des blocs est spécifiée par le paramètre DB_BLOCK_SIZE (généralement 8 Ko). Les différentes versions du software Oracle database sont dues entre autre aux différences des spécificités de chaque système d exploitation. b. Extents L extent est le second niveau de regroupement logique dans une base de données Oracle. Il est composé d un ou de plusieurs blocks contigus permettant de stocker un certain type d information. Les extents sont ajoutés automatiquement lorsque l objet est créé ou lorsqu un segment nécessite davantage d espace. La taille minimum d un extent est de cinq database blocks. c. Segments Le niveau suivant de regroupement logique dans Oracle est appelé segment. Un segment est un regroupement d extents qui forment un objet de base de données qui est traité comme unité par Oracle (table ou index par exemple). Ainsi donc, c est la plus petite unité de stockage qu un utilisateur final d Oracle peut manipuler.

18 Oracle dispose de quatre types de segments : Data segment (segment des données) ; Index segment (segments d index) ; Temporary segment (segments temporaires) ; Undo segment ultérieurement appelée rollback segment (segments d annulation). c.1. Data segment Ces segments stockent les données de la base de données. c.2. Index segment Ces segments stockent les données des index. Oracle crée le segment d index pour chaque index ou partition d index chaque fois que vous exécutez l ordre CREATE INDEX. c.3. Temporary segment Lors de l exécution des requêtes, Oracle exige souvent un espace temporaire de travail pour ses différentes étapes de traitement de la dite requête (le parsing et l exécution). Oracle alloue automatiquement cette espace disque qui est appelé segment temporaire. Typiquement, Oracle exige un segment temporaire comme un espace de travail pour les tris. Il ne crée pas de segment si les opérations de tris peuvent être faites en mémoire ou si le moteur Oracle trouve d autres moyens d exécuter l opération en utilisant les index. Généralement, les opérations suivantes exigent la création des segments temporaires : CREATE INDEX; SELECT ORDER BY; SELECT DISTINCT; SELECT GROUP BY; SELECT UNION; SELECT INTERSECT; SELECT MINUS; Certaines jointures portant sur des tables non indexées ainsi que certaines sous requêtes peuvent exiger l usage d un segment temporaire. Par exemple si la requête contient une clause DISTINCT ou GROUP BY. c.4. Undo segment Ces segments stockent les données avant toute modification dans la base et sont vidés une fois que les modifications sont validées. Par contre en cas d annulation des modifications, ce sont les données stockées dans les undo segments qui permettent un retour en arrière.

19 d. Tablespaces Un tablespace est une unité logique de stockage pouvant stocker un ou plusieurs fichiers physiques. La quasi-totalité des opérations d administration relatives au stockage s effectue en travaillant sur le tablespace et non sur les fichiers de données. Logiquement, un tablespace est composé d un ou plusieurs segments. Physiquement, il correspond à un emplacement dans le disque du serveur pour le stockage des données. Pour une installation d Oracle, un minimum de deux tablespaces sont crées : la tablespace SYSTEM et SYSAUX. Une installation par défaut en crée six. d.1. Le tablespace SYSTEM Toutes les bases de données contiennent un tablespace nommé SYSTEM, qui est crée automatiquement à la création de la base. Le tablespace SYSTEM contient toujours les tables du dictionnaire des données de la base entière. Tous les programmes PL/SQL (procédures, fonctions, packages et triggers dont nous en parleront en détaille à la fin de notre formation), résident dans le tablespace SYSTEM. Les données utilisateurs ne doivent pas être stockées dans le tablespace SYSTEM. d.2. Le tablespace SYSAUX Le tablespace SYSAUX est crée auxiliairement au tablespace SYSTEM et ce, lors de la création de la base de données. Si le tablespace SYSAUX devient indisponible, la base de données restera néanmoins fonctionnelle. L administrateur de base de données peut créer d autres tablespaces selon les besoins des applications: 1. Un tablespace d annulation (UNDO TBS) utilisé pour stocker des informations d annulation des transactions. Ils ne sont pas créer par l administrateur, mais par l instance ; 2. un tablespace par domaine d activité (chaque sous système de gestion peut avoir ces propres tablespaces pour le stockage des données d application) ; 3. un tablespace pour les index. d.3. Le tablespace USERS C est le tablespace par défaut des utilisateurs. d.4. Le tablespace UNDO Ce tablespace récupère la version précédente des données en cours de modification par les transactions se déroulant sur la base.

20 d.5. Le tablespace Temporaire TEMP Tablespace récupérant les segments temporaires utilisés par les requêtes SQL de la base de données. La vue de dictionnaire DBA_ TABLESPACES fournit la liste de tous les tablespaces de la base de données. La vue de dictionnaire DBA_DATA_FILES fournit les datafiles associés à chaque tablespace de la base de données. Les tablespaces temporaires ne figurant pas dans DBA_TABLESPACES, sont listés dans DBA_TEMP_FILES. Oracle vous permet également de créer un type spécial de tablespace appelé bigfile tablespace dont la taille peut aller jusqu à 128 Téraoctets. En utilisant le bigfile, l administration des tablespaces devient alors transparente pour le DBA. En effet, Oracle utiliser alors la technologie ASSM (Automatic Segment Space Management) pour une gestion automatique de l espace dans les segments composant le bigfile. L utilisation d Oracle Managed Files (OMF) facilite également la gestion des tablespaces. Avec l OMF, le DBA spécifie un ou plusieurs fichiers systèmes qui contiendront les fichiers de données, de control et les redo log (archive) et Oracle s occupe du nommage et de la gestion de ces fichiers. Remarques : Recommandation de stockage Pour le stockage des fichiers de la base de données, il est conseillé de : 1. Utiliser plusieurs disques pour une meilleure répartition des entrées/sorties, ce qui contribue à l'amélioration des performances ; 2. Multiplexer les fichiers de contrôle et les fichiers de journalisation pour améliorer la sécurité de la base de données ; 3. Consulter régulièrement les fichiers des alertes et si nécessaires les supprimer (Oracle les recréera au besoin). III.3. Instance III.3.1. Introduction Pour ce qui est du bon fonctionnement de tout serveur professionnel, les éléments essentiels à prendre en compte portent généralement sur le processeur, l espace disque et l espace mémoire. Cependant, comme nous l avons énoncé plus haut, il faut savoir que si la base de données Oracle se trouve dans le disque du serveur, l instance par contre est volatile car elle est stockée dans la mémoire du serveur et que la taille de votre mémoire volatil est d une importance capitale au bon fonctionnement de l instance.

21 Une instance Oracle est composée d une zone mémoire appelée System Global Area (SGA), associée à cela un certain nombre des processus qui interagissent entre le SGA et les fichiers de la base de données qui se trouvent sur disque. Elle est identifiée par un identifiant appelé SID. Généralement, le SID porte le même nom que la base et l instance. De la figure ci-dessous, nous pouvons voir les éléments essentiels d une instance Oracle à savoir la mémoire partagée (SGA) et les processus (les petits cercles en bas). Instance System Global Area (SGA) ORACLE_SID Database buffer cache Redo log buffer Shared Pool Library cache Dictionary cache Serveur DBW0 LGWR PMON SMON ARC0 Figure : Une instance Oracle et ses composants. III.3.2. Les mémoires Oracle III Le PGA Afin d optimiser ses performances, le serveur Oracle dispose de plusieurs zones mémoires différentes ayant chacune une tâche claire dans le fonctionnement du serveur. Comme on a pu le voir précédemment, le processus utilisateur est un processus qui établie une connexion, ouvre une session avec une base de données Oracle. Par exemple, un utilisateur qui se connecte à l instance de la base de données et ouvre ainsi une session pendant laquelle il pourra envoyer au moteur d Oracle des commandes SQL. La session durera jusqu à la fin de la connexion. Bref, La zone mémoire allouée pour le fonctionnement de chaque processus utilisateur au niveau du serveur s appelle la zone mémoire du programme (PGA, Program Global Area).

22 PGA INSTANCE ORACLE Processus serveur Processus utilisateur Client Figure : Le PGA, la zone mémoire du programme. Le PGA sert à stocker les informations privées liées à la session correspondante. La PGA comprend essentiellement les zones mémoires suivantes : Une zone mémoire dans laquelle s effectue le tri de vos requêtes ; Une zone mémoire où sont stockées des informations sur la session telles que les privilèges de l utilisateur ; Une zone mémoire qui gère les informations sur la gestion des curseurs actuellement utilisés par la session ; Une zone mémoire où sont stockées les informations concernant les variables utilisées par la session. III Complément sur l architecture des serveurs Comme expliqué brièvement dans nos paragraphes précédents, il existe deux sortes des serveurs : les serveurs dédiés et les serveurs partagés. a. Serveur dédiés (Oracle dedicated server) Réfléchissons comme suit : si vous êtes un client VIP dans un restaurant, vous devez probablement avoir votre propre serveur. Ce dernier est là pour vous accueillir et vous escorter jusqu à votre siège. Il prend votre commande et vous aide même à faire les bons choix et cela peu importe les nouveaux clients qui entrent dans le restaurant, votre serveur reste à vos côtés pour se rassurer que vous êtes à l aise et vous rend le meilleur des services. Un serveur dédié fonctionne de la même manière, chaque connexion cliente est associée à un processus serveur appelé shadow process. Peu importe les nouvelles connexions, le processus serveur reste au service des requêtes du même client. Aussi, vous remarquez que dans un tel environnement, il ne doit pas y avoir beaucoup des clients. C est la

23 raison pour laquelle le mode dédié est utilisé dans un environnement des requêtes lourdes exécutées par très peu des clients (notamment dans les data warehouse). Client 1 Shodow process 1 Client 2 Shodow process 2 Shodow process 3 Shodow process 4 Client 3 Serveur Client 4 b. Serveur partagé (Oracle shared server) Figure : Oracle Dedicated Server. Dans certains restaurants, un même serveur s occupe des ordres des plusieurs clients et les donnent aux cuisiniers. Une fois les plats prêts vous êtes servis. Dans un tel environnement comme c est le cas des cafés et terrasses, les plats sont assez abordables et tout le monde peu y prendre part. C est donc un environnement où un même serveur peut s occuper de plusieurs clients. De cette même façon fonctionne Oracle en mode shared server. Un processus dispatcher est responsable pour coordonner les requêtes des clients. Ce processus est capable de prendre en main les requêtes de plusieurs clients. Quand un client lance une requête au serveur, c est le dispatcher qui a la responsabilité d enregistrer la requête et la placer dans le request queue qui est une structure contenue dans le SGA. Le processus serveur exécute la requête et place le résultat dans une zone de la SGA appelé response queue. Chaque dispatcher dispose de son propre response queue. Le dispatcher prend la réponse dans le response queue et le retourne au client. Cidessous les étapes dans la communication entre le client et le serveur. Le client passe sa requête à son dispatcher ; 1. Le dispatcher place la requête dans la request queue du SGA ; 2. Un des processus serveur exécute la requête placé dans le request queue ; 3. Le serveur place la réponse de la requête dans le response queue du dispatcher ; 4. Le dispatcher récupère la réponse dans le response queue ; 5. La réponse est retournée au client.

24 Dispatcher pocess 5 6 Request queue Response queue Client 3 4 Shared Server pocess Oracle SGA Serveur Figure : Oracle shared server. Pour ce qui est du PGA, suivant que le processus serveur est partagé par plusieurs processus utilisateurs ou dédié à un seul processus utilisateur, les informations relatives aux ordres de tris et à la session seront stockées dans le shared pool ou dans le PGA. III L UGA Les informations relatives aux ordres de tris et à la session forment une zone mémoire appelé UGA (User Global Area) ; cette zone mémoire est déplacée dans le pool partagé si vous utilisez l option de serveur partagé. Sinon elle est placé dans le PGA. III Le SGA Alors que le PGA est la zone de mémoire allouée à chaque processus utilisateur, un autre espace mémoire est alloué à tous les processus utilisateurs, c est le SGA (System Global Area). La mémoire SGA (System Global Area) est une mémoire partagée par tous les processus serveur et les processus en arrière-plan. Elle est allouée au démarrage de l'instance en mémoire principale. La SGA doit être la plus grosse possible car son but est d'économiser les entré/sorties. Elle contient obligatoirement les composants suivants : Le cache de données (database buffer cache) ; Le cache de reprise (redo log buffer) pour les changements récents ; Le cache d'exécution partagée (shared pool) pour les requêtes SQL et PL/SQL. Contient le dictionnaire de données en cache.

25 a. Le database buffer cache Il contient les blocs de données les plus récemment utilisés (blocs de tables, bloc d index, bloc de segments d annulation) avant de les inscrire dans la base de données. Ayant une taille finie, Oracle utilise un algorithme LRU (Least Recently Used) pour gérer ce cache. En cas de manque de place, Oracle supprime du cache les données utilisées le moins récemment. Généralement, l augmentation de sa taille améliore les performances du système. La taille du Database Buffer Cache est définie par la valeur du paramètre DB_BLOCK_BUFFERS. b. Redo log Buffer Il stocke les informations sur les modifications apportées à la base de données, avant leur écriture dans un fichier de journalisation. Il est utilisé de manière séquentielle et circulaire. Le redo log est dimensionné par le paramètre LOG_BUFFER. c. La shared pool La shared pool est composée principalement de deux structures : Le library cache ; Le dictionnary cache. Le library cache contient des informations sur les ordres SQL et PL/SQL les plus récemment exécutés (notamment les plans d execution). Le Dictionnary cache contient les informations du dictionnaire de données Oracle les plus récemment utilisées (description des tables, droits des utilisateurs, les contraintes d intégrités, la description des tables, les informations sur les index, et autres metadata). Le shared pool est globalement dimensionné par le paramètre SHARED_POOL_SIZE. La répartition entre le library cache et le dictionnary cache est assurée par Oracle. Le SGA contient secondairement les composants suivants : Java pool : mémoire utilisé par la machine virtuelle java, elle est dimensionné par le paramètre JAVA_POOL_SIZE (Oracle recommande une taille minimum de 50 MB) ; Large pool : zone de mémoire optionnelle utilisée par différents processus dans des configurations particulières comme par exemple la mise en œuvre de l ASM ; Stream pool : zone de mémoire utilisée par la fonctionnalité Streams (méthode avancée de réplication), elle est dimensionné par le paramètre STREAMS_POOL_SIZE ; Reserved Area (depuis la version 11g) : zone mémoire utilisée par Oracle pour initialiser le paramètre MEMORY_TARGET. Par défaut ce paramètre est positionné à une valeur égale à 128K ; Flashback buffer : mémoire qui enregistre les images des blocks des données modifiés. C est-à-dire qu à chaque fois qu un bloc de données est modifié, l image du bloc avant modification est inscrite dans le flashback buffer pour une utilisation future de

26 restauration ou interrogation de la base à un état du passée. La taille maximale de cette zone mémoire est de 16 MB. Suivant que l on travail avec un serveur en mode dédié ou partagé, la SGA se présente sommairement comme le montre la figure suivante : SGA en mode dédié Shared Pool Librairy cache Dictionnary cache Database Buffer cache Redo Log buffer SGA en mode partagé Shared Pool Shared Pool Librairy cache Dictionnary cache Database Buffer cache Redo Log buffer UGA UGA UGA UGA Request queue Dispatcher response queue Dispatcher response queue Figure : SGA dans un serveur dédié versus SGA dans un serveur partagé. Vous pouvez le constatez que lorsque Oracle est configuré pour fonctionner en mode serveur partagé, deux nouvelles structures sont crée au niveau de la SGA : le request queues et les response queues. Il n y a qu un seul request queue pour tous les dispatchers, mais chaque dispatcher a sa propre response queue. Comme expliqué plus haut, le PGA est une zone mémoire utilisé pour stocker les informations relatives à la session de l utilisateur. Cependant, dans un serveur en mode partagé, ces informations sont placées dans le UGA. III.3.3. Les processus d arrière plan Oracle dispose de plusieurs processus d arrière plan qui ont chacun un rôle bien précis dans le fonctionnement de l instance. Chacun exécute un travail spécifique pour aider à gérer l'instance.

27 Cinq processus d'arrière-plan sont indispensable au bon fonctionnement du server Oracle, d autres par contre sont facultatifs. Un processus d'arrière-plan facultatif n est utilisé que lorsque la fonction optionnelle d Oracle correspondante est activée dans la base. Parmi les processus les plus importants, nous pouvons citer : III DBWn (Database Writer) Les processus DBWn sont chargés d écrire les blocs modifiés du database buffer cache dans les fichiers de donnes. Généralement, une instance a un seul processus Database Writer désigné par DBW0. Sur les systèmes multiprocesseurs et multidisque ayant une forte activité de mise à jour, il est possible voir conseillé de démarrer plusieurs processus DBW (jusqu à 20 au maximum). Ce processus copie des blocs modifiés des tables, les index, les undo segments et les segments temporaires à chaque occurrence des événements suivants : Toutes les trois secondes ; Dès que la longueur de la dirty List (liste des blocs modifiés) dépasse un seuil défini en interne ; Chaque fois qu un autre processus consulte la liste des blocs récemment utilisés (LRU List) et ne peut trouver un emplacement libre après un nombre prédéterminé en interne de recherche de blocs ; Lors de chaque Checkpoint ; Chaque fois que la base de données est arrêtée normalement ; Chaque fois qu une table est effacée ou tronquée ; Chaque fois qu un tablespace est mise en mode hors ligne ou lecture seule ainsi que s il fait partie d une sauvegarde en ligne. Les flèches dans la figure suivante illustre l action du DBW dans l instance Oracle.

28 Instance System Global Area (SGA) ORACLE_SID Database buffer cache Redo log buffer Shared Pool Library cache Dictionary cache Serveur DBW0 LGWR PMON SMON ARC0 De controle De données journaux Figure : DBWn III LGWR (Log Writer) Les processus LGWR sont chargés de l écriture par lots des entrées du tampon des journaux (buffer redo log) dans les fichiers journaux (fichier redo log). Ce processus est le seul à écrire dans les fichiers journaux et à lire directement dans le tampon des journaux durant le fonctionnement normal de la base. Il écrit dans ces fichiers de façon séquentielle, par opposition aux accès relativement aléatoires du processus DBWn dans les fichiers de données. Les flèches dans la figure suivante illustre l action du LGWR dans l instance Oracle.

29 Instance System Global Area (SGA) ORACLE_SID Database buffer cache Redo log buffer Shared Pool Library cache Dictionary cache Serveur DBW0 LGWR PMON SMON ARC0 De controle De données journaux Figure : LGWR. III CKPT (checkpoints) Les points de contrôle créent et enregistrent des points de synchronisation dans la base de données, de manière à faciliter sa récupération en cas de défaillance d une instance ou d un média. Le processus CKPT exécute des points de contrôle, met à jour l en-tête des fichiers de données ; lui-même n écrit pas les données modifiées sur le disque, c est le processus DBWn qui s en charge. Ce processus s exécute naturellement à chaque basculement des fichiers journaux (fichiers redo-log) ou peut être exécuté manuellement par un DBA. Les flèches dans la figure suivante illustre l action du CKPT dans l instance Oracle.

30 Instance System Global Area (SGA) ORACLE_SID Database buffer cache Redo log buffer Shared Pool Library cache Dictionary cache Serveur DBW0 LGWR CKPT SMON ARC0 De controle De données journaux De données Figure : CKPT III ARCn (Archiver) Le processus LGWR écrit dans chacun des fichiers journaux à tour de rôle. Lorsque le premier est plein, il écrit dans le second, et ainsi de suite. Une fois le dernier fichier rempli, il écrase le contenu du premier. Lorsque la base opère dans le mode ARCHIVELOG, elle réalise une copie de chaque fichier journal et lorsqu ils sont pleins ; ces fichiers archivés sont généralement enregistrés sur le disque. La fonction d archivage, c'est-à-dire la copie de chaque fichier journal plein, est assurée par le processus ARCn. Les flèches dans la figure suivante illustre l action du processus ARC dans l instance Oracle. Ce processus d'arrière-plan est facultatif mais essentiel à la récupération d'une base suite à une défaillance physique du disque.

31 Instance System Global Area (SGA) ORACLE_SID Database buffer cache Redo log buffer Shared Pool Library cache Dictionary cache Serveur DBW0 LGWR PMON SMON ARC0 De controle De données journaux De données Figure : ARCn III SMON (System MONitor) C est un processus obligatoire qui s apparente à un observateur du système. Ce moniteur est essentiel au démarrage de l instance et est impliqué dans tout rétablissement qui s avère nécessaire. Il nettoie également les segments temporaires et inutilisés, efface les vieux processus, et fusionne l espace libre dans de plus grands blocs contigus. Récupération de l'instance : Dans le cas d un arrêt anormal du serveur (coupure électrique par exemple) SMON récupère automatiquement l instance de la manière suivante : 1. Réapplique les modifications des transactions validées (Roll forward) à partir des fichiers de journalisation en ligne. Une transaction validée implique une écriture des entrées de journalisation correspondantes sur disque et donc ne seront pas perdues en cas d échec de l instance ; 2. Ouvre la base de données pour permettre l'accès aux utilisateurs ; 3. Annule les modifications des transactions non validées (Roll back) lorsqu un processus serveur accède à des données verrouillées par des transactions non validées. Son fonctionnement est automatique, aucune action de l administrateur de données n étant requise. La flèche dans la figure suivante illustre l action du SMON dans l instance Oracle.

32 Instance System Global Area (SGA) ORACLE_SID Database buffer cache Redo log buffer Shared Pool Library cache Dictionary cache Serveur DBW0 LGWR PMON SMON ARC0 De controle De données journaux Figure : SMON III PMON (Process Monitor) C est un processus obligatoire qui est affecté à la récupération des processus utilisateur défaillants. Il libère le cache de blocs de données ainsi que les ressources qui étaient exploitées par l utilisateur, telles que les verrous, afin de les mettre à disposition d autres utilisateurs. A l instar du processus de surveillance SMON, le processus de surveillance PMON s active régulièrement pour se rendre compte si on a besoin de ses services. Le rôle de PMON est très important si vous utilisez un système comportant de nombreux utilisateurs ou encore si vous effectuez des requêtes lourdes. Chaque connexion à une base Oracle consomme quelques méga-octets de mémoire et du temps processeur. Si un utilisateur arrête brutalement sa machine ou si la connexion réseau est perdue au cours d une longue requête SQL, un ensemble de ressources peut ainsi être bloqué inutilement si PMON ne détecte pas et ne nettoie pas les transactions anormalement interrompues. La flèche dans la figure suivante illustre l action du DBW dans l instance Oracle.

33 Instance System Global Area (SGA) ORACLE_SID Database buffer cache Redo log buffer Shared Pool Library cache Dictionary cache PMON DBW0 LGWR CKPT SMON ARC0 PGA Processus serveur De controle De données journaux De données Figure : PMON III Autres processus A partir de la version 10g, d autres processus ont été crée pour facilité le fonctionnement d Oracle, nous pouvons citer entre autre : Job Queue Coordinator (CJQ) : utilisé par le Scheduler, il génère les processus pour exécuter les jobs planifiés qui se trouvent dans la file d attente interne d Oracle. Memory Manager (MMAN) : il agit comme un distributeur de mémoire et coordonne la taille allouée aux différents composants. Memory Monitor (MMON) : il programme et déclenche ADDM (L Automatic Database Diagnostic Monitor) qui effectue des analyses pour déterminer des problèmes potentiels ; Recovery Write (RVWR) : il est responsable d écrire le log du flash back dans le flash recovery area (nous allons en parler dans les procédures de sauvegarde et restauration) ; Recoverer (RECO) : il est utilisé dans une architecture distribuée pour résoudre tout types des problèmes lié à l identification de la base cible.

34 Remarque : Audit des opérations de la base L'audit Oracle est une des possibilités de surveillance de l'activité de la base de données pour : Contrôler les accès à la base, à des fins de sécurité ; Vérifier que tel ou tel objet est accédé en lecture ou en écriture (sécurité ou analyse de performance) ; Vérifier les tentatives d'accès infructueux à des objets ; Contrôler l'audit éventuellement des pirates. Les résultats sont stockés dans une table du dictionnaire : SYS.AUD$ et préférablement accédés à travers des vues prédéfinies. Ceci permet de faire des requêtes SQL sur le résultat et éventuellement de produire des rapports sophistiqués. La table SYS.AUD$ et les vues DBA_% ne sont bien sur accessibles qu'au DBA ou tout utilisateur ayant le privilège SYSDBA. Les vues d'audit sont normalement créées par CATALOG.SQL, et plus précisément par le script CATAUDIT.SQL, lors de la création de la base. Vue d'audit STMT_AUDIT_OPTION_MAP AUDIT_ACTIONS ALL_DEF_AUDIT_OPTS DBA_STMT_AUDIT_OPTS DBA_PRIV_AUDIT_OPTS DBA_OBJ_AUDIT_OPTS, USER_OBJ_AUDIT_OPTS DBA_AUDIT_TRAIL, USER_AUDIT_TRAIL DBA_AUDIT_OBJECT, USER_AUDIT_OBJECT DBA_AUDIT_SESSION, USER_AUDIT_SESSION DBA_AUDIT_STATEMENT, USER_AUDIT_STATEMENT DBA_AUDIT_EXISTS Description code des types d'option codes des actions option d'audit OBJET part défaut options d'audit courantes options d'audit SYSTEME courantes options d'audit sur tous les objets et sur ceux du USER toutes les entrées d'audit et celles concernant uniquement le USER toutes les entrées d'audit OBJET et celles concernant uniquement le USER les entrées d'audit concernant toutes les (dé)connexions et celles concernant uniquement le USER les entrées d'audit concernant GRANT, REVOKE, AUDIT, NOAUDIT, et ALTER SYSTEM de tous ou du user connecté les entrées d'audit concernant AUDIT EXISTS et AUDIT NOT EXISTS.

35 Pour activer les fonctions d audit, il faut positionner le paramètre de démarrage AUDIT_TRAIL dans le fichier INIT.ORA de la base. Trois valeurs sont possibles : NONE : invalide l'audit (valeur par default) ; DB : valide l'audit et stocke les résultats dans la table d'audit ; OS : valide l'audit et stocke les résultats dans un fichier externe (un autre paramètre : AUDIT_FILE_DEST précise le répertoire de destination...). III.3.4. Processus de traitement d une requête Il est question dans ce paragraphe de comprendre le processus de traitement d une requête avant son exécution et ce, afin de nous permettre de mieux comprendre la gestion des ressources mémoires intervenant ainsi que les techniques à mettre en œuvre afin d optimiser les requêtes et avoir plus rapidement les résultats de vos requêtes. Pour ce qui est des zone mémoire, le cache library conserve, à des fin de partage et de réutilisation, des informations sur les commandes SQL et le code PL/SQL les plus récemment utilisées qui ont été soumis par des utilisateurs de la base de données. Dans le traitement d une requête, le chargement d une instruction SQL est très consommatrice en termes de ressources, raison pour laquelle le cache library partagé est utilisée pour optimiser et ne charger une instruction SQL qu une et une seule fois pour de multiples exécutions. En effet, c est le processus serveur associé à la session utilisateur qui exécute l ordre SQL transmis par le processus utilisateur. Pour le traitement de l ordre SQL, un curseur (ou une zone mémoire) est crée et pointe vers une partie du PGA. Figure : le processus de traitement d une requête.

36 Cette mémoire privée contient les informations nécessaires pour le traitement du curseur (adresses des blocs contenant les lignes à extraire de la base de données, nombre de ligne renvoyé, ligne courante, état du curseur (ouvert ou fermé), ). Toutes ces informations ne sont utiles que pour la session utilisateur correspondante, c est pourquoi elles sont placées dans la mémoire privée PGA et seront écrasées à la fermeture de la session. Le traitement du code SQL se fait en trois phases : Analyse parse ; Execute ; Fetch. III Phase1 "Analyse parse" Durant cette phase d analyse, Oracle procède à : 1. une analyse syntaxique de l'ordre SQL (une instruction SQL doit respecter, en effet, des règles en termes d'orthographe et d'ordre des mots SQL réservés). 2. une analyse sémantique: Oracle vérifie l existence dans le dictionnaire de données des objets référencés dans l'ordre SQL (tables, noms de colonnes ) et les droits de l'utilisateur sur les objets référencés. 3. Oracle détermine Le plan d'exécution (execution plan) permettant d accéder de façon optimale aux données en s'appuyant sur des statistiques (sur les tables et les index) destinés à l'optimiseur. Ces statistiques permettent par exemple de juger qu'un FULL SCAN (parcours séquentiel) d'une table est parfois plus rentable en termes de coût qu'un accès via index lorsque le nombre de lignes est réduit. Seuls les index contribuant à un temps de réponse optimal seront utilisés. 4. Le plan d'exécution détermine les blocs Oracle contenant les données recherchées. 5. Oracle place, ensuite, la requête SQL dans le library cache 6. Oracle utilise un algorithme de hachage pour calculer une valeur qu'il compare aux valeurs calculées pour les autres ordres SQL disponibles dans le cache. Cette valeur détermine s'il est possible de réutiliser un code déjà mis en cache ou non. Pour éviter autant que possible l'analyse parse qui consomme beaucoup de ressources, il est nécessaire d'optimiser le code SQL. Cette optimisation ne signifie pas forcément mettre les codes dans une procédure stockées. Ce qu il faut, c est limiter les entrées-sorties. Idéalement, le code SQL doit être soumis à travers des procédures stockées. Une procédure stockée présente, en effet, l'avantage de stocker dans le dictionnaire de données (sur disque) le plan d exécution correspondant. L utilisation de procédures applicatives garantit d avoir le même texte de code SQL et donc la même valeur de hachage. Le code SQL est de ce fait facilement réutilisable. Un développeur doit organiser ses programmes en unités réutilisables et éviter autant que

37 possible d introduire plusieurs blocs anonymes comportant du code SQL similaire mais générant des valeurs de hachage différentes. Pour les mêmes raisons, il est conseillé d'utiliser des variables attachés (variable bind) dans le code SQL à la place des variables littérales. C est ce qu on appelle du SQL Tuning. Exemples Select * from emp where empno = 200; Select * from emp where empno = 300; Ces deux ordres SQL génèrent deux analyses parse. Pour optimiser, il faudra utiliser une variable attaché (bind) comme suit: Select * from emp where empno = :num; a. Oracle Tuning Le tuning ou la gestion des performances, concerne les différentes configurations sur le serveur afin de le rendre plus productif et rentable. Le sujet étant vaste et d une importance capitale pour un administrateur de base de données, il sera abordé dans la deuxième partie du module DBA Associate. Brièvement retenons que le Tuning s applique à quatre niveaux et qu Oracle dispose des outils spécifiques pour mener à bien cette tâche délicate pour des meilleures performances du serveur.

38 Figure : les quatre niveaux du tuning Oracle. III Phase 2 " Execute" Durant cette phase d'exécution, on cherche les blocs de données contenant l information demandée par la requête SQL. Le processus serveur effectue: 1. des lectures physiques depuis les fichiers de données sur disque (pour les blocs non trouvés en mémoire), 2. des écritures en mémoire pour ces blocs lus depuis le disque, 3. des lectures en mémoire pour préparer la réponse à la requête SQL.

39 Figure : l étape Execute. Ainsi, tous les blocs nécessaires à la requête sont disponibles en mémoire (Database Buffer Cache) pour extraction des lignes de tables recherchées. III Phase 3 "Fetch" Pendant cette phase, les enregistrements (colonnes de tables..) sont transférés depuis les buffers en mémoire vers le processus utilisateur. La réponse à la commande SQL est ainsi envoyée par le processus serveur vers le processus utilisateur. Le résultat de l analyse parse et le plan d exécution sont conservés dans le cache. Ils ne seront pas recalculés dans les prochaines réutilisations du code SQL ainsi partagé. Le cache "library" est géré par un algorithme LRU (least recently used) pour retirer les instructions SQL ou PL/SQL qui ne sont plus réutilisées afin de libérer de l'espace pour les nouvelles entrées. En utilisant cette technique, Oracle tient plus longtemps en mémoire les requêtes SQL fréquemment consultées, améliorant ainsi la performance globale du serveur en minimisant l analyse parse et le calcul du plan d exécution.

COMPOSANTS DE L ARCHITECTURE D UN SGBD. Chapitre 1

COMPOSANTS DE L ARCHITECTURE D UN SGBD. Chapitre 1 1 COMPOSANTS DE L ARCHITECTURE D UN SGBD Chapitre 1 Généralité 2 Les composants principaux de l architecture d un SGBD Sont: Les processus Les structures mémoires Les fichiers P1 P2 Pn SGA Fichiers Oracle

Plus en détail

3. La SGA ou System global Area

3. La SGA ou System global Area 1/11 L'instance Oracle Oracle est une base de données composée de 3 parties différentes : L'instance Les fichiers de données Les fichiers de données facultatifs (fichier d'initialisation, fichier de mots

Plus en détail

Oracle Maximum Availability Architecture

Oracle Maximum Availability Architecture Oracle Maximum Availability Architecture Disponibilité des systèmes d informations Technologies et recommandations 1 Qu est-ce que Oracle Maximum Availability Architecture (MAA)? 1. Objectif : Disponibilité

Plus en détail

Notion de base de données

Notion de base de données Notion de base de données Collection de données opérationnelles enregistrées sur un support adressable et utilisées par les systèmes et les applications Les données doivent être structurées indépendamment

Plus en détail

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

Oracle 11g Optimisez vos bases de données en production (ressources matérielles, stockage, mémoire, requêtes) Avant-propos 1. Lectorat 11 2. Pré-requis 12 3. Objectifs 12 4. Environnement technique 13 Choisir la bonne architecture matérielle 1. Introduction 15 2. Architecture disque 16 2.1 La problématique de

Plus en détail

Oracle 10g Administration +

Oracle 10g Administration + Oracle 10g Administration + FAC-SIMILE Ce fac-simile contient : - la table des matières, - le préambule, - un extrait du chapitre 10 Auteur Razvan Bizoi GUIDE DE FORMATION La marque TSOFT est une marque

Plus en détail

Oracle Database 11g: Administration Workshop I Release 2

Oracle Database 11g: Administration Workshop I Release 2 Oracle University Appelez-nous: +33 (0) 1 57 60 20 81 Oracle Database 11g: Administration Workshop I Release 2 Durée: 5 Jours Description Ce cours constitue la première étape de votre formation en tant

Plus en détail

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

Programme détaillé. Administrateur de Base de Données Oracle - SQLServer - MySQL. Objectifs de la formation. Les métiers Programme détaillé Objectifs de la formation Les systèmes de gestion de bases de données prennent aujourd'hui une importance considérable au regard des données qu'ils hébergent. Véritable épine dorsale

Plus en détail

CHAPITRE 1 ARCHITECTURE

CHAPITRE 1 ARCHITECTURE 07/04/2014 Université des sciences et de la Technologie Houari Boumediene USTHB Alger Département d Informatique ADMINISTRATION ET TUNING DE BASES DE DONNÉES CHAPITRE 1 ARCHITECTURE RESPONSABLE DR K. BOUKHALFA

Plus en détail

Introduction aux SGBDR

Introduction aux SGBDR 1 Introduction aux SGBDR Pour optimiser une base Oracle, il est important d avoir une idée de la manière dont elle fonctionne. La connaissance des éléments sous-jacents à son fonctionnement permet de mieux

Plus en détail

CYCLE CERTIFIANT ADMINISTRATEUR BASES DE DONNÉES

CYCLE CERTIFIANT ADMINISTRATEUR BASES DE DONNÉES SGBD / Aide à la décision CYCLE CERTIFIANT ADMINISTRATEUR BASES DE DONNÉES Réf: KAO Durée : 15 jours (7 heures) OBJECTIFS DE LA FORMATION Ce cycle complet vous apportera les connaissances nécessaires pour

Plus en détail

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

//////////////////////////////////////////////////////////////////// Administration bases de données ////////////////////// Administration bases de données / INTRODUCTION Système d informations Un système d'information (SI) est un ensemble organisé de ressources (matériels, logiciels, personnel, données

Plus en détail

Oracle : Administration

Oracle : Administration Oracle : Administration 2crit & présenté par Abdoul Aziz Ciss Dept GIT EPT Email: aaciss@ept.sn Contenu Introduction Installation du logiciel Oracle Database Création de bases de données Configuration

Plus en détail

Création d'une nouvelle base de données

Création d'une nouvelle base de données 199 Chapitre 7 Création d'une nouvelle base de données 1. Vue d'ensemble Création d'une nouvelle base de données 1.1 Étapes de création d'une nouvelle base de données pour une application Le processus

Plus en détail

Plan de formation : Certification OCA Oracle 11g. Les administrateurs de base de données (DBA) Oracle gèrent les systèmes informatiques

Plan de formation : Certification OCA Oracle 11g. Les administrateurs de base de données (DBA) Oracle gèrent les systèmes informatiques Plan de formation : Certification OCA Oracle 11g Description Les administrateurs de base de données (DBA) Oracle gèrent les systèmes informatiques industriels les plus avancés. Cette formation permettra

Plus en détail

Administration des bases de données relationnelles Part I

Administration des bases de données relationnelles Part I Administration des bases de données relationnelles Part I L administration des bases de données requiert une bonne connaissance - de l organisation et du fonctionnement interne du SGBDR : structures logiques

Plus en détail

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

Performances. Gestion des serveurs (2/2) Clustering. Grid Computing Présentation d Oracle 10g Chapitre VII Présentation d ORACLE 10g 7.1 Nouvelles fonctionnalités 7.2 Architecture d Oracle 10g 7.3 Outils annexes 7.4 Conclusions 7.1 Nouvelles fonctionnalités Gestion des

Plus en détail

Administration de Base de Données Notes de cours

Administration de Base de Données Notes de cours Administration de Base de Données Notes de cours 1 Élément de connexion Oracle Thomas Année universitaire 2005-2006 La connexion à une base Oracle fait intervenir quatres éléments :

Plus en détail

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

Administration des bases de données sous Oracle. 10g. Fabien De Marchi, Jean-Marc Petit. Université de Lyon. November 22, 2007 1/96 1/96 Administration des bases de données sous Oracle 10g Fabien De Marchi, Jean-Marc Petit Université de Lyon November 22, 2007 2/96 Sur le cours Prérequis et objectifs Prérequis Modèle relationnel (structure,

Plus en détail

Administration d'une base de données

Administration d'une base de données Administration d'une base de données Soors Aurore 1 Table des matières 1. Architecture d'une base de données...4 1.1. La structure logique...4 1.1.1. Les tablespaces...4 1.1.2. Les segments, extensions

Plus en détail

Du 10 Fév. au 14 Mars 2014

Du 10 Fév. au 14 Mars 2014 Interconnexion des Sites - Design et Implémentation des Réseaux informatiques - Sécurité et Audit des systèmes - IT CATALOGUE DE FORMATION SIS 2014 1 FORMATION ORACLE 10G 11G 10 FEV 2014 DOUALA CAMEROUN

Plus en détail

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

Nœud Suisse du Projet International GBIF (Global Biodiversity Information Facility) Nœud Suisse du Projet International GBIF (Global Biodiversity Information Facility) Présentation de la solution de backup Oracle de la base de données test GBIF et déploiement de la solution en production

Plus en détail

COMPRENDRE LES DIFFERENTS TYPES DE CONNEXION LORS DE LA

COMPRENDRE LES DIFFERENTS TYPES DE CONNEXION LORS DE LA COMPRENDRE LES DIFFERENTS TYPES DE CONNEXION LORS DE LA DEFINITION D UNE BIBLIOTHEQUE D ACCES A UNE BASE DE DONNEES Cet article s adresse aux administrateurs SAS en charge de la mise à disposition des

Plus en détail

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

Cours Bases de données 2ème année IUT Cours Bases de données 2ème année IUT Cours 13 : Organisation d une base de données, ou comment soulever (un peu) le voile Anne Vilnat http://www.limsi.fr/individu/anne/cours Plan 1 Les clusters de table

Plus en détail

Administration des Bases de Données Oracle

Administration des Bases de Données Oracle Administration des Bases de Données Oracle Plan Introduction à l administration de données Structure d une base de données Architecture interne d Oracle Sécurité des données Utilitaires Administration

Plus en détail

Chapitre III Architecture de Base de Données Oracle

Chapitre III Architecture de Base de Données Oracle LP Informatique(DA2I UF7 : Administration Système, Réseaux et Base de données 15/12/2007, Enseignant : M. Nakechbnadi mail : nakech@free.fr Première parie : Administration d une BD Chapitre III Architecture

Plus en détail

Oracle 11g. Exploitation. Document Tellora Page 1/205. Auteur : Clotilde Attouche. Société TELLORA. Version 1.2. Du 6 Mai 2010

Oracle 11g. Exploitation. Document Tellora Page 1/205. Auteur : Clotilde Attouche. Société TELLORA. Version 1.2. Du 6 Mai 2010 Oracle 11g Exploitation Auteur : Clotilde Attouche Société TELLORA Version 1.2 Du 6 Mai 2010 Page 1/205 Sommaire 1 Présentation... 7 1.1 Les produit Database proposes par Oracle... 8 1.2 Notion de Grid

Plus en détail

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

SGBDR. Systèmes de Gestion de Bases de Données (Relationnelles) SGBDR Systèmes de Gestion de Bases de Données (Relationnelles) Plan Approches Les tâches du SGBD Les transactions Approche 1 Systèmes traditionnels basés sur des fichiers Application 1 Gestion clients

Plus en détail

TP Administration Oracle

TP Administration Oracle Ingénieurs 2000 Informatique et Réseaux TP Administration Oracle DIOP Ngoné ESSAIDI Abderrahim Février 2008 1 Sommaire Sommaire... 2 Introduction... 3 1. Déploiement d application... 4 1.1 Résumé du besoin...

Plus en détail

et Groupe Eyrolles, 2006, ISBN : 2-212-11747-7

et Groupe Eyrolles, 2006, ISBN : 2-212-11747-7 Tsoft et Groupe Eyrolles, 2006, ISBN : 2-212-11747-7 OEM Console Java OEM Console HTTP OEM Database Control Oracle Net Manager 6 Module 6 : Oracle Enterprise Manager Objectifs Contenu A la fin de ce module,

Plus en détail

SQL Server 2012 - Administration d'une base de données transactionnelle avec SQL Server Management Studio (édition enrichie de vidéos)

SQL Server 2012 - Administration d'une base de données transactionnelle avec SQL Server Management Studio (édition enrichie de vidéos) Présentation 1. Introduction 13 2. Présentation de SQL Server 14 2.1 Qu'est-ce qu'un SGBDR? 14 2.2 Mode de fonctionnement Client/Serveur 16 2.3 Les plates-formes possibles 17 2.4 Les composants de SQL

Plus en détail

SQL Server 2014 Administration d'une base de données transactionnelle avec SQL Server Management Studio

SQL Server 2014 Administration d'une base de données transactionnelle avec SQL Server Management Studio Présentation 1. Introduction 13 2. Présentation de SQL Server 14 2.1 Qu'est-ce qu'un SGBDR? 15 2.2 Mode de fonctionnement client/serveur 16 2.3 Les plates-formes possibles 18 2.4 Les composants de SQL

Plus en détail

CATALOGUE FORMATION 2014

CATALOGUE FORMATION 2014 CATALOGUE FORMATION 2014 EFFICIAN depuis 2007, est une société de conseil et de formation au service des professionnels de l'informatique ; dans le domaine des bases de données Oracle, DB2 et Postgre.

Plus en détail

«clustering» et «load balancing» avec Zope et ZEO

«clustering» et «load balancing» avec Zope et ZEO IN53 Printemps 2003 «clustering» et «load balancing» avec Zope et ZEO Professeur : M. Mignot Etudiants : Boureliou Sylvain et Meyer Pierre Sommaire Introduction...3 1. Présentation générale de ZEO...4

Plus en détail

Administration Centrale : Opérations

Administration Centrale : Opérations Administration Centrale : Opérations 2 Administration Centrale Opération 30/01/09 Sommaire 1 Introduction... 3 2 Topologie et services... 4 2.1 Serveurs de la Batterie... 4 2.2 Services sur le Serveur...

Plus en détail

Mise en oeuvre TSM 6.1

Mise en oeuvre TSM 6.1 Mise en oeuvre TSM 6.1 «Bonnes pratiques» pour la base de données TSM DB2 Powered by Qui sommes nous? Des spécialistes dans le domaine de la sauvegarde et de la protection des données 10 ans d expertise

Plus en détail

et Groupe Eyrolles, 2006, ISBN : 2-212-11747-7

et Groupe Eyrolles, 2006, ISBN : 2-212-11747-7 Tsoft et Groupe Eyrolles, 2006, ISBN : 2-212-11747-7 Il est possible, pour des objets, de visualiser ou modifier le contenu. La présentation des objets dans le navigateur peut être paramétrée ; vous trouverez

Plus en détail

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

Cours 6. Sécurisation d un SGBD. DBA - M1ASR - Université Evry 1 Cours 6 Sécurisation d un SGBD DBA - M1ASR - Université Evry 1 Sécurisation? Recette d une application Vérification des fonctionnalités Vérification de l impact sur le SI existant Gestion du changement

Plus en détail

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

Secteur Tertiaire Informatique Filière étude - développement. Accueil. Apprentissage. Période en entreprise. Evaluation. Secteur Tertiaire Informatique Filière étude - développement Activité «Développer la persistance des» Sauvegarde et restauration Oracle 11g Accueil Apprentissage Période en entreprise Evaluation Code barre

Plus en détail

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

<Insert Picture Here> Solaris pour la base de donnés Oracle Solaris pour la base de donnés Oracle Alain Chéreau Oracle Solution Center Agenda Compilateurs Mémoire pour la SGA Parallélisme RAC Flash Cache Compilateurs

Plus en détail

INSIA SIGL Bases de données ARCHITECTURE ORACLE

INSIA SIGL Bases de données ARCHITECTURE ORACLE INSIA SIGL Bases de données ARCHITECTURE ORACLE http://st-curriculum.oracle.com/tutorial/dbxetutorial/index.htm http://st-curriculum.oracle.com/ Bertrand LIAUDET ARCHITECTURE ORACLE 3 Méthodes de connexion

Plus en détail

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

4. Utilisation d un SGBD : le langage SQL. 5. Normalisation Base de données S. Lèbre slebre@unistra.fr Université de Strasbourg, département d informatique. Présentation du module Contenu général Notion de bases de données Fondements / Conception Utilisation :

Plus en détail

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

Techniques de stockage. Techniques de stockage, P. Rigaux p.1/43 Techniques de stockage Techniques de stockage, P. Rigaux p.1/43 Techniques de stockage Contenu de ce cours : 1. Stockage de données. Supports, fonctionnement d un disque, technologie RAID 2. Organisation

Plus en détail

Bases de données et sites WEB

Bases de données et sites WEB Bases de données et sites WEB Cours2 : Sécurité et contrôles d accès Anne Doucet 1 Authentification Autorisation Privilèges Rôles Profils Limitations de ressources Plan Audit Contrôle d accès via les vues

Plus en détail

Installation personnalisée d'oracle 10g

Installation personnalisée d'oracle 10g Installation personnalisée d'oracle 10g Ressources Sachez avant tout que, comparativement à certains de ses concurrents, Oracle est extrêmement gourmand en ressources (mémoire et disque). Il est en effet

Plus en détail

Cours Bases de données

Cours Bases de données Informations sur le cours Cours Bases de données 9 (10) séances de 3h Polycopié (Cours + TD/TP) 3 année (MISI) Antoine Cornuéjols www.lri.fr/~antoine antoine.cornuejols@agroparistech.fr Transparents Disponibles

Plus en détail

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

Présentation du module Base de données spatio-temporelles Présentation du module Base de données spatio-temporelles S. Lèbre slebre@unistra.fr Université de Strasbourg, département d informatique. Partie 1 : Notion de bases de données (12,5h ) Enjeux et principes

Plus en détail

CQP ADMINISTRATEUR DE BASES DE DONNÉES (ABD) ----------------------------------------------------------------------------------------------------

CQP ADMINISTRATEUR DE BASES DE DONNÉES (ABD) ---------------------------------------------------------------------------------------------------- ORGANISME REFERENCE STAGE : 26587 20 rue de l Arcade 75 008 PARIS CONTACT Couverture : M. Frédéric DIOLEZ Paris, Lyon, Bordeaux, Rouen, Toulouse, Marseille, Tél. : 09 88 66 17 40 Strasbourg, Nantes, Lille,

Plus en détail

Technologie SDS (Software-Defined Storage) de DataCore

Technologie SDS (Software-Defined Storage) de DataCore Technologie SDS (Software-Defined Storage) de DataCore SANsymphony -V est notre solution phare de virtualisation du stockage, dans sa 10e génération. Déployée sur plus de 10000 sites clients, elle optimise

Plus en détail

BUFFER CACHE SHARED POOL LRU

BUFFER CACHE SHARED POOL LRU 1 2 3 Taille des CACHEs de l instance La taille de la SGA est principalement dépendante de la taille du «BUFFER CACHE» et de l espace «SHARED POOL». L algorithme de gestion de ces espaces de mémoire est

Plus en détail

Manuel d utilisation 26 juin 2011. 1 Tâche à effectuer : écrire un algorithme 2

Manuel d utilisation 26 juin 2011. 1 Tâche à effectuer : écrire un algorithme 2 éducalgo Manuel d utilisation 26 juin 2011 Table des matières 1 Tâche à effectuer : écrire un algorithme 2 2 Comment écrire un algorithme? 3 2.1 Avec quoi écrit-on? Avec les boutons d écriture........

Plus en détail

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

Eléments de base de la sécurité des bases de données Eléments de base de la sécurité des bases de données N. Boudjlida UHP Nancy 1, LORIA, Campus scientifique, BP 239 54506 Vandœuvre Lès Nancy CEDEX (F) Nacer.Boudjlida@loria.fr, http://www.loria.fr/ nacer

Plus en détail

Allocation de l adressage IP à l aide du protocole DHCP.doc

Allocation de l adressage IP à l aide du protocole DHCP.doc Allocation de l adressage IP à l aide du protocole DHCP.doc Sommaire 1. Ajout et autorisation d un service Serveur DHCP...2 1.1. Comment le protocole DHCP alloue des adresses IP...2 1.2. Processus de

Plus en détail

Gestion des utilisateurs et de leurs droits

Gestion des utilisateurs et de leurs droits Gestion des utilisateurs et de leurs droits Chap. 12, page 323 à 360 Lors de la création d'un utilisateur vous devez indiquer son nom, ses attributs, son profil, la méthode d'authentification (par le SE

Plus en détail

Encryptions, compression et partitionnement des données

Encryptions, compression et partitionnement des données Encryptions, compression et partitionnement des données Version 1.0 Grégory CASANOVA 2 Compression, encryption et partitionnement des données Sommaire 1 Introduction... 3 2 Encryption transparente des

Plus en détail

TP11 - Administration/Tuning

TP11 - Administration/Tuning TP11 - Administration/Tuning MIAGE #3-2006/2007 January 9, 2007 1 Architecture physique d une base Oracle 1.1 La structure physique Une base de données Oracle est composé de fichiers (au sens du système

Plus en détail

ORACLE TUNING PACK 11G

ORACLE TUNING PACK 11G ORACLE TUNING PACK 11G PRINCIPALES CARACTÉRISTIQUES : Conseiller d'optimisation SQL (SQL Tuning Advisor) Mode automatique du conseiller d'optimisation SQL Profils SQL Conseiller d'accès SQL (SQL Access

Plus en détail

Julien MATHEVET Alexandre BOISSY GSID 4. Rapport RE09. Load Balancing et migration

Julien MATHEVET Alexandre BOISSY GSID 4. Rapport RE09. Load Balancing et migration Julien MATHEVET Alexandre BOISSY GSID 4 Rapport Load Balancing et migration Printemps 2001 SOMMAIRE INTRODUCTION... 3 SYNTHESE CONCERNANT LE LOAD BALANCING ET LA MIGRATION... 4 POURQUOI FAIRE DU LOAD BALANCING?...

Plus en détail

IBM Tivoli Monitoring, version 6.1

IBM Tivoli Monitoring, version 6.1 Superviser et administrer à partir d une unique console l ensemble de vos ressources, plates-formes et applications. IBM Tivoli Monitoring, version 6.1 Points forts! Surveillez de façon proactive les éléments

Plus en détail

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

ORACLE 10G DISTRIBUTION ET REPLICATION. Distribution de données avec Oracle. G. Mopolo-Moké prof. Associé UNSA 2009/ 2010 ORACLE 10G DISTRIBUTION ET REPLICATION Distribution de données avec Oracle G. Mopolo-Moké prof. Associé UNSA 2009/ 2010 1 Plan 12. Distribution de données 12.1 Génération des architectures C/S et Oracle

Plus en détail

ORACLE 10g Découvrez les nouveautés. Jeudi 17 Mars Séminaire DELL/INTEL/ORACLE

ORACLE 10g Découvrez les nouveautés. Jeudi 17 Mars Séminaire DELL/INTEL/ORACLE ORACLE 10g Découvrez les nouveautés Jeudi 17 Mars Séminaire DELL/INTEL/ORACLE Le Grid Computing d Entreprise Pourquoi aujourd hui? Principes et définitions appliqués au système d information Guy Ernoul,

Plus en détail

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

420-PK6-SL Banques de données Avancées UTILISATEURS 420-PK6-SL Banques de données Avancées Gestion des UTILISATEURS RÈGLES DE NOMENCLATURE Un UTILISATEUR Oracle est : Une connexion à Oracle Un nom de connexion"login" Un détenteur de droits et privilèges

Plus en détail

FileMaker Server 14. Guide de démarrage

FileMaker Server 14. Guide de démarrage FileMaker Server 14 Guide de démarrage 2007-2015 FileMaker, Inc. Tous droits réservés. FileMaker, Inc. 5201 Patrick Henry Drive Santa Clara, Californie 95054 FileMaker et FileMaker Go sont des marques

Plus en détail

SQL Server 2008 et YourSqlDba

SQL Server 2008 et YourSqlDba SQL Server 2008 et YourSqlDba Le futur de la maintenance des bases de données et la haute-disponibilité Par : Maurice Pelchat Société GRICS Survol du sujet Haute disponibilité (HD) Assurer la disponibilité

Plus en détail

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

Bases de données et sites WEB Licence d informatique LI345 Bases de données et sites WEB Licence d informatique LI345 Anne Doucet Anne.Doucet@lip6.fr http://www-bd.lip6.fr/ens/li345-2013/index.php/lescours 1 Contenu Transactions en pratique Modèle relationnel-objet

Plus en détail

1 2 3 4 5 Faisons le point - Où en êtes-vous dans votre cursus? Quel est votre parcours? A quelle étape en êtes-vous? Vers où allez-vous? - Quels sont vos objectifs? Quel est le challenge? Quels sont vos

Plus en détail

FileMaker Server 14. Aide FileMaker Server

FileMaker Server 14. Aide FileMaker Server FileMaker Server 14 Aide FileMaker Server 2007-2015 FileMaker, Inc. Tous droits réservés. FileMaker, Inc. 5201 Patrick Henry Drive Santa Clara, Californie 95054 FileMaker et FileMaker Go sont des marques

Plus en détail

Présentation de l'outil RMAN d'oracle

Présentation de l'outil RMAN d'oracle Présentation de l'outil RMAN d'oracle Ce document constitue une première présentation de l'outil RMAN d'oracle permettant de sauvegarder et restaurer des bases de données. L'article abordera également

Plus en détail

Créer et partager des fichiers

Créer et partager des fichiers Créer et partager des fichiers Le rôle Services de fichiers... 246 Les autorisations de fichiers NTFS... 255 Recherche de comptes d utilisateurs et d ordinateurs dans Active Directory... 262 Délégation

Plus en détail

Oracle 11g - Dataguard

Oracle 11g - Dataguard Oracle 11g - Dataguard Ecole INSTA Paris http://www.insta.fr/site/ Document et projet réalisé Candy Scordia le 29/07/2011 par Dataguard Oracle 11g R2 Kubuntu 11.04 64 bits Téléchargement de Oracle 11g

Plus en détail

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

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 1/46 2/46 Pourquoi? Anne-Cécile Caron Master MAGE - SGBD 1er trimestre 2014-2015 Le concept de transaction va permettre de définir des processus garantissant que l état de la base est toujours cohérent

Plus en détail

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

RECOVERY MANAGER G. Mopolo-Moké prof. MBDS UNSA 2005/ 2006 RECOVERY MANAGER G. Mopolo-Moké prof. MBDS UNSA 2005/ 2006 1 Plan Général Plan 1. A propos de RMAN 2. Pourquoi utiliser RMAN? 3. Vue d ensemble de l environnement RMAN 4. Se connecter aux bases de données

Plus en détail

SQL Server Installation Center et SQL Server Management Studio

SQL Server Installation Center et SQL Server Management Studio SQL Server Installation Center et SQL Server Management Studio Version 1.0 Grégory CASANOVA 2 SQL Server Installation Center et SQL Server Management Studio [03/07/09] Sommaire 1 Installation de SQL Server

Plus en détail

4D v11 SQL Release 5 (11.5) ADDENDUM

4D v11 SQL Release 5 (11.5) ADDENDUM ADDENDUM Bienvenue dans la release 5 de 4D v11 SQL. Ce document présente les nouveautés et modifications apportées à cette nouvelle version du programme. Prise en charge de nouvelles plates-formes La release

Plus en détail

Programmation C. Apprendre à développer des programmes simples dans le langage C

Programmation C. Apprendre à développer des programmes simples dans le langage C Programmation C Apprendre à développer des programmes simples dans le langage C Notes de cours sont disponibles sur http://astro.u-strasbg.fr/scyon/stusm (attention les majuscules sont importantes) Modalités

Plus en détail

UltraBackup NetStation 4. Guide de démarrage rapide

UltraBackup NetStation 4. Guide de démarrage rapide UltraBackup NetStation 4 Guide de démarrage rapide Table des matières 1 Fonctionnalités... 3 1.1 Ce qu UltraBackup NetStation permet de faire... 3 1.2 Ce qu UltraBackup NetStation ne permet pas de faire...

Plus en détail

Windows Internet Name Service (WINS)

Windows Internet Name Service (WINS) Windows Internet Name Service (WINS) WINDOWS INTERNET NAME SERVICE (WINS)...2 1.) Introduction au Service de nom Internet Windows (WINS)...2 1.1) Les Noms NetBIOS...2 1.2) Le processus de résolution WINS...2

Plus en détail

MySQL. (Administrateur) (Dernière édition) Programme de formation. France, Belgique, Suisse, Roumanie - Canada

MySQL. (Administrateur) (Dernière édition) Programme de formation. France, Belgique, Suisse, Roumanie - Canada MySQL (Administrateur) (Dernière édition) Programme de formation Microsoft Partner France, Belgique, Suisse, Roumanie - Canada WWW.SASGROUPE.COM Formez vos salariés pour optimiser la productivité de votre

Plus en détail

Tutorial sur SQL Server 2000

Tutorial sur SQL Server 2000 Tutorial sur SQL Server 2000 Système d'exploitation est 2000 pro et Serveur 2000 Sommaire 1 - Installation... 2 2 - Mise à jour... 5 3 - Présentation... 7 3-1 - Service Manager (Démarrer/Programmes/Microsoft

Plus en détail

Session S12 Les bases de l optimisation SQL avec DB2 for i

Session S12 Les bases de l optimisation SQL avec DB2 for i Session S12 Les bases de l optimisation SQL avec DB2 for i C. GRIERE cgriere@fr.ibm.com STG Lab Services IBM i Avril 2012 Les fleurs et les requêtes SQL Lorsque l on veut planter de nouvelles fleurs dans

Plus en détail

EN BLANC AVANT IMPRESSION»»»

EN BLANC AVANT IMPRESSION»»» Ce modèle doit se trouver sous le répertoire C:\Users\toto\AppData\Roaming\Microsoft\Templates EN BLANC AVANT IMPRESSION»»» Version : 1.0.54 Date du livrable : Mars 2015. Pour rafraîchir le numéro de version,

Plus en détail

Gestion des sauvegardes

Gestion des sauvegardes Gestion des sauvegardes Penser qu un système nouvellement mis en place ou qui tourne depuis longtemps ne nécessite aucune attention est illusoire. En effet, nul ne peut se prémunir d événements inattendus

Plus en détail

ORACLE DIAGNOSTIC PACK 11G

ORACLE DIAGNOSTIC PACK 11G ORACLE DIAGNOSTIC PACK 11G PRINCIPALES CARACTÉRISTIQUES : Surveillance automatique des diagnostics (ADDM Automatic Database Diagnostic Monitor) Référentiel automatique de la charge (AWR Automatic Workload

Plus en détail

La réplication sous SQL Server 2005

La réplication sous SQL Server 2005 La réplication sous SQL Server 2005 Mettre en place la réplication sur SQL Server 2005 La réplication des bases de données est une problématique classique dans les systèmes d'information. En effet, dans

Plus en détail

Sauvegarde des bases SQL Express

Sauvegarde des bases SQL Express Sauvegarde des bases SQL Express Sauvegarder les bases de données avec SQL Express Dans les différents articles concernant SQL Server 2005 Express Edition, une problématique revient régulièrement : Comment

Plus en détail

WebSpy Analyzer Giga 2.1 Guide de démarrage

WebSpy Analyzer Giga 2.1 Guide de démarrage WebSpy Analyzer Giga 2.1 Guide de démarrage Ce document aide à vous familiariser avec l utilisation de WebSpy Analyzer Giga. Pour des informations plus détaillées, consultez le guide utilisateur Analyzer

Plus en détail

Chapitre V : La gestion de la mémoire. Hiérarchie de mémoires Objectifs Méthodes d'allocation Simulation de mémoire virtuelle Le mapping

Chapitre V : La gestion de la mémoire. Hiérarchie de mémoires Objectifs Méthodes d'allocation Simulation de mémoire virtuelle Le mapping Chapitre V : La gestion de la mémoire Hiérarchie de mémoires Objectifs Méthodes d'allocation Simulation de mémoire virtuelle Le mapping Introduction Plusieurs dizaines de processus doivent se partager

Plus en détail

Notes de cours : bases de données distribuées et repliquées

Notes de cours : bases de données distribuées et repliquées Notes de cours : bases de données distribuées et repliquées Loïc Paulevé, Nassim Hadj-Rabia (2009), Pierre Levasseur (2008) Licence professionnelle SIL de Nantes, 2009, version 1 Ces notes ont été élaborées

Plus en détail

Groupe Eyrolles, 2006, ISBN : 2-212-11707-8

Groupe Eyrolles, 2006, ISBN : 2-212-11707-8 Groupe Eyrolles, 2006, ISBN : 2-212-11707-8 Table des matières Avant-propos................................................ Objectifs de ce livre.......................................... Partie I : Oracle

Plus en détail

Configuration de SQL server 2005 pour la réplication

Configuration de SQL server 2005 pour la réplication Sommaire Configuration de SQL server 2005 pour la réplication 1. Présentation du besoin... 2 2. Architecture des deux sites... 2 3. Présentation du modèle de publication de réplication... 3 4. Configuration

Plus en détail

Introduction à ORACLE WAREHOUSE BUILDER Cédric du Mouza

Introduction à ORACLE WAREHOUSE BUILDER Cédric du Mouza Introduction à ORACLE WAREHOUSE BUILDER Cédric du Mouza Avant de commencer à travailler avec le produit, il est nécessaire de comprendre, à un haut niveau, les problèmes en réponse desquels l outil a été

Plus en détail

Oracle 8i sous Linux

Oracle 8i sous Linux Oracle 8i sous Linux Gilles Briard Éditions Eyrolles ISBN : 2-212-09135-4 2000 Avant-propos Linux est un système désormais éprouvé, comme son arrivée dans les entreprises l atteste. L engouement qu il

Plus en détail

Structure fonctionnelle d un SGBD

Structure fonctionnelle d un SGBD Fichiers et Disques Structure fonctionnelle d un SGBD Requetes Optimiseur de requetes Operateurs relationnels Methodes d acces Gestion de tampon Gestion de disque BD 1 Fichiers et Disques Lecture : Transfert

Plus en détail

INTERSYSTEMS CACHÉ COMME ALTERNATIVE AUX BASES DE DONNÉES RÉSIDENTES EN MÉMOIRE

INTERSYSTEMS CACHÉ COMME ALTERNATIVE AUX BASES DE DONNÉES RÉSIDENTES EN MÉMOIRE I N T E RS Y S T E M S INTERSYSTEMS CACHÉ COMME ALTERNATIVE AUX BASES DE DONNÉES RÉSIDENTES EN MÉMOIRE David Kaaret InterSystems Corporation INTERSySTEMS CAChé CoMME ALTERNATIvE AUx BASES de données RéSIdENTES

Plus en détail

PORTAIL DE GESTION DES SERVICES INFORMATIQUES

PORTAIL DE GESTION DES SERVICES INFORMATIQUES PORTAIL DE GESTION DES SERVICES INFORMATIQUES Principes q Portail "tout-en-un" q Destiné aux équipes en charge du SI q Basé sur les bonnes pratiques ITIL q Simple à mettre en œuvre q Disponible dans le

Plus en détail

Les bases de l optimisation SQL avec DB2 for i

Les bases de l optimisation SQL avec DB2 for i Les bases de l optimisation SQL avec DB2 for i Christian GRIERE cgriere@fr.ibm.com Common Romandie 3 mai 2011 Les fleurs et les requêtes Lorsque l on veut planter de nouvelles fleurs dans un jardin il

Plus en détail

2011 Hakim Benameurlaine 1

2011 Hakim Benameurlaine 1 Table des matières 1 UTILISATION DES OUTILS DE REQUÊTES... 2 1.1 Bases de données SQL Server... 2 1.2 Éditions de SQL Server... 3 1.3 Les outils de SQL Server... 4 2011 Hakim Benameurlaine 1 1 UTILISATION

Plus en détail

CONFIGURATION DE BASE. 6, Rue de l'industrie BP130 SOULTZ 68503 GUEBWILLER Cedex. Fax.: 03 89 62 13 31 Tel.: 08.92.56.68.69 support@telmatweb.

CONFIGURATION DE BASE. 6, Rue de l'industrie BP130 SOULTZ 68503 GUEBWILLER Cedex. Fax.: 03 89 62 13 31 Tel.: 08.92.56.68.69 support@telmatweb. Educ@Box Configuration de base 6, Rue de l'industrie BP130 SOULTZ 68503 GUEBWILLER Cedex Fax.: 03 89 62 13 31 Tel.: 08.92.56.68.69 support@telmatweb.com Page: 1 Sommaire 1 CONTENU DE VOTRE PACKAGE EDUC@BOX...

Plus en détail