Questionnaire 9 Flashcards
- Quelle traduction pour espace disque logique en anglais ? De quoi est-il composé ?
- Tablesapce
- Datafile
- Segments
- Extents
- Quelle différence entre un tablespace géré localement ou par le dictionnaire ?
- Localement : Sa table d’allocation se trouve dans le tablespace lui-même
- Sinon dans le dictionnaire
- Risque-t-on plus ou moins de fragmentation dans un tablespace s’il est géré localement ?
Pourquoi ?
• Moins de fragmentation, car Oracle gère les extensions automatiquement.
- Tous les tablespaces sont-ils gérés localement par défaut ?
• Non par défaut le tablespace System c’est géré par le dictionnaire
- Quels sont les 3 types de tablespaces ?
- Permanents
- Undo
- Temporaire
- Citez 3 raisons qui amènent à définir plusieurs tablespaces dans une base de données.
- Mieux gérés que si on mets ses informations dans des tablespaces permanents, donc créer undo et temporaire
- Séparer les tablespace pour une seule catégorie de segment, éventuellement disques différents
- Tablespace spécifiques par application, mieux pour les tâches de maintenances par ex.
- Citez les 6 tablespaces recommandés pour une base de données Oracle
- System
- Sysaux
- Undo
- Temporaire
- Tables
- Index
- Sans préciser bigfile ou smallfile à la création d’un tablespace, de quel type est-il crée ?
• Option du create database, il utilisera celui par défaut
- L’option unlimited pour l’extension d’un fichier de données est-elle conseillée et pourquoi ?
• Non, pas conseillé, mieux vaut laisser Oracle détecter la limite
- Quelle différence entre “dictionary” et “local” dans la création d’un tablespace ? Leuqel est
préférable et pourquoi ?
- Local : gérés dans les entêtes du tablespace
- Dictionnaire : dans le dictionnaire
- Local est le meilleur, gestion des espaces libres automatiques
- De quoi s’occupe-t-on dans le “segment space management” d’un tablespace ?
• Récupération des espaces libres (trous) liée à la fragmentation
- Que signifie “storage 200K” est spécifié à la création d’un tablespace ?
• Taille initial par défaut des segments qui seront créés
- Avantage et inconvénient de “compress” pour un tablespace ?
• Optimisation de la place sur le disque, par contre plus de CPU
- Que doit-on prévoir si l’on définit pour un tablespace un blocsize de 16K alors qu’il serait de 8K si
l’on avait rien précisé à sa création
• Il faudra définir un pool DB_16K_CACHE_SIZE dans l’instance qui va travailler avec le tablespace
- Quelle est la signification de l’option nologging pour un tablespace ?
• Pas de journalisation, intéressant pour certaines opérations comme les imports, création d’index
- Quelle est l’intérêt de l’option flashback pour un tablespace ?
• Restaurations partielles dans le passé
- Dans quelles conditions peut-on modifier la taille d’un fichier de données ?
- Il ne dois pas dépasser la capacité du disque (augmentation)
- On ne peut pas aller en dessous de la dernère extension (suppression des extension avec des données)
- Comment interdire à un fichier de données presque plein de s’étendre automatiquement
lorsqu’il sera plein ?
• Alter tablespace datafile ‘nomfichier’ autoextend off
- Comment bloquer simplement l’exploitation d’une application sans arrêter les autres
applications de la même base de données ? Citez la commande.
- Il faut lui avoir affecté un tablespace spécifique
* ALTER DATABASE nom offline
- Dans quelles conditions peut-on déplacer un fichier de données ? Donnez les 2 réponses
possibles
- Base de données doit être en état mount
* Ou alors le tablespace est offline
- Citez les étapes pour déplacer un fichier de données en interrompant l’exploitation de la BD
- Connexion sysdba
- Shutdown immediate puis startup mount
- Déplacer le fichier
- Alter database rename datafile ‘ancien nom’ to ‘nouveau nom’
- Alter database open
- Citez les étapes pour déplacer un fichier de données en interrompant seulement l’exploitation de
son tablespace.
- Connexion sysdba
- Alter tablespace nom offline
- Déplacer le fichier
- Alter database rename datafile ‘ancien nom’ to ‘nouveau nom’
- Alter tablespace nom online
- Citez 3 conditions pour pouvoir supprimer un fichier de données dans un tablespace.
- Il doit être vide
- Il doit en rester un autre (ne peut pas être le premier à avoir été créé)
- Tablespace doit être online
- Dans quel cas spécifie-t-on l’option “including content” à la suppression d’un tablespace et quel
est son effet ?
• Quand il n’est pas vide, force la suppression des données
- Dans quel cas spécifie-t-on l’option “cascade contraints” à la suppression d’un tablespace et quel
est son effet ?
- Quand des tables dans ce tablespace sont référencées par des tables dans d’autres tablespaces
- Cela supprime les clés étrangères concernées
- Dans la vue dba$tablespace, la colonne allocation_type peut valoir user, system ou uniform.
Quelle est la signification de chacune de ces options ?
- User : extension gérés dans le dictionnaire (manuel)
- System : extensions gérés automatiquement par le système
- Uniforme : extensions de taille uniforme
- Quelle différence entre les vues dba$datafile et v$datafile ?
- Dba$ : infos sur les tablessapces tels qu’ils sont sur le disques
- V$ : infos dynamiques, comme les status par ex
- Comment connaitre le nombre d’extensions composant la table ‘voiture’ du schéma ‘garage’ ?
Citez la requête ou explicitez-la.
- Questionner dba:segments
* Select extent form dba_segments where owner = ‘garage’ and segment_name = ‘voiture’
- Comment connaitre le nombre de trous (emplacements libres) plus gros que 20 blocks dans un
fichier de données ? Citez la requête ou explicitez-la.
- Questionner dba_free_space
* Select count(*) from dba_free_space where file_id = ‘nom’and blocks > 20
- Comment dresser la carte des extensions d’un fichier de données ? Citez la requête ou explicitez-
la.
- Questionner dba_extents
* Select * from dba_extents where tablesapce_name = ‘…’ and file_id = ‘…’ order by block_id