Chapitre 2 – Démarrage et arrêt de la base Le package Enterprise Manager est l’outil d’Oracle pour les administrateur de base de données. Il permet de surveiller et de contrôler une base de données Oracle. Ainsi on pourra : - Démarrer et arrêter une base de données Maintenir des fichiers Surveiller des utilisateurs et des verrous Traiter des commandes SQL Créer une base de données Oracle Les commandes peuvent être exécutées soit en mode ligne, soit par une interface dirigée par menus. Le démarrage des outils est spécifique au système d’exploitation. Il existe pour unix, le Server Manager et Oracle SQL Worksheet pour windows. 1 – Connexion à une base en tant que SYSDBA Si on veut arrêter ou démarrer ou créer une base il est impératif de se connecter comme SYSDBA ou SYSOPER Il faut tout d’abord initialiser la variable d’environnement ORACLE_SID ORACLE_SID=test ; EXPORT ORACLE_SID; Pour la 10g Sqlplus « / as sysdba » Pour les versions précédentes d’oracle, SVRMGRL Connect sys/motdepasse as SYSDBA Sous UNIX, seuls les utilisateurs qui ont les autorisations système de connexion comme SYSDBA ou SYSOPER peuvent se connecter. 2 – Les processus de démarrage Nous allons partir de la base fermée à la base ouverte. A – SHUTDOWN Base complètement arrêtée B – NOMOUNT La base lit le fichier init.ora L’instance est créée. C – MOUNT On associe une base de donnéesaec une instance démarrée On lit le fichier de contrôle On confirme que les fichiers de données et REDO LOG existent. D – OPEN On ouvre les fichiers de données online et les redo logs On acquiert les ROLLBACKS SEGMENTS On appelle SMON si le dernier shutdown était avorté On rend le dictionnaire disponible 3 – Commande de démarrage de la base de données STARTUP [FORCE] [NOMOUNT | MOUNT | OPEN ] [db_name] [PFILE=initSID.ora] [EXCLUSIVE | SHARED] [RESTRICT] A - STARTUP On démarre l’instance et on l’associe à db_name en utilisant les paramètres écrits dans PFILE. Si PFILE est omis dans la commande, on utilise le fichier initSID.ora trouvé dans le répertoire ORACLE_HOME. B – FORCE On arrête une instance courante avant de redémarrer l’instance dans le mode spécifié. Cette commande est identique à la commande SHUTDOWN ABORT C – NOMOUNT On démarre l’instance sans monter la base de données On peut alors créer une base A noter que loa base de données n’est pas accessible par les utilisateurs, ni par l’administrateur de base de données. D – MOUNT EXCLUSIVE On démarre la base et on monte la base exclusivement à l’instance. On peut alors : - faire un basculement de l’archivage on / off - Restaurer - Ajouter et supprimer des fichiers log et des groupes de fichiers log - Renommer des fichiers de données et des fichiers log - Sauvegarder des fichiers de contrôle Recréer des fichiers de contrôle Recréer des fichiers de données endommagés Mettre hors service un fichier de données E – MOUNT SHARED On peut démarrer l’instance, monter la base de données en parallèle ou en mode partagé permettant ainsi à d’autres instances de l’ouvrir également. On pourra alors : - Ajouter et supprimer des fichiers log et des groupes de fichiers log Renommer des fichiers de données et des fichiers log Sauvegarder des fichiers de contrôle Recréer des fichiers de données endommagés Mettre hors service un fichier de données A noter que le DBA utilise cette commande pour modifier la structure de la base. F – OPEN On démarre l’instance, on monte la base de données et on ouvre soit en mode partagé, soit en mode exclusif. On pourra alors : - Activer et désactiver les fichiers redo log Renommer la base de données On pourra également, à condition que les fichiers correspondants ne soient pas utilisés : - Ajouter et supprimer des fichiers log et des groupes de fichiers log Renommer des fichiers de données et des fichiers log Sauvegarder des fichiers de contrôle Recréer des fichiers de données endommagés Mettre hors service un fichier de données G – RESTRICT On restreint alors l’accès à la base de données aux utilisateurs qui ont reçu les privilèges système CREATE SESSION et RESTRICTED SESSION On utilise cette commande généralement avec STARTUP OPEN [EXCLUSIVE | SHARED] Quelques exemples de démarrage d’une base : STARTUP OPEN test On démarre une instance test et on ouvre la base de données en utilisant le fichier de paramètre par défaut STARTUP NOMOUNT On démarre l’instance sans monter la base de données STARTUP OPEN test PFILE=inittest.ora RESTRICT On démarre l’instance test et on ouvre la base de données en mode restreint en utilisant le fichier inittest.ora 4 – Modification du mode de la base Une fois que l’instance a démarré, le mode de la base peut être changé uniquement en modifiant la base ou en arrêtant l’instance Pour cela on utilise la commande : ALTER DATABASE [nom de la base] [MOUNT | OPEN] ; Le mode de la base ne peut être modifié que dans le sens vers l’ouverture complète (OPEN). Par exemple : ALTER DATABASE dbname MOUNT ; 5 – Arrêt de la base SHUTDOWN [NORMAL | IMMEDIATE | ABORT] La commande SHUTDOWN ferme la base de données, démonte la base et ferme l’instance en une seule commande. La seule façon pour revenir au mode précédent est d’arrêter l’instance et de l’ouvrir à nouveau dans le mode approprié. Les étapes d’un arrêt normal sont : -La fermeture de la base de données • Ecriture de toutes les données de la base et des données pour la restauration, de la SGA sur les fichiers de données et les redo logs • Fermeture de tous les fichiers de données et des redo logs online - Le démontage de la base de données • Fermeture des fichiers de contrôle - L’arrêt de l’instance • Suppression de la SGA de la mémoire A – NORMAL Dans ce mode, on : - Attend que tous les utilisateurs soient déconnectés Interdit à de nouveaux utilisateurs de se connecter Ferme et démonte la base de données Arrête l’instance Le prochain démarrage de la base ne nécessitera pas de restauration B – IMMEDIATE Dans ce mode on : - Termine les instruction SQL en cours d’exécution Les transactions non validées sont annulées (rollback) Déconnecte tous les utilisateurs connectés Arrête l’instance Une restauration automatique peut être effectuée au prochain démarrage C – ABORT Dans ce mode on : - - Termine les instruction SQL en cours d’exécution Les transactions non validées ne sont pas annulées Déconnecte tous les utilisateurs connectés Arrête l’instance Une restauration automatique peut être effectuée au prochain démarrage