1. Universit´e de Sousse
I.S.I.T.Com.
Administration des Bases de Donn´ees
TP 1
Khaled Jouini
2011-2012
Notes pr´eliminaires
• La plupart des s´eances de TP se d´eroulent sous SQL*PLUS
• Sauvegardez une trace de votre travail dans un document TXT en ex´ecutant au
d´ebut de chaque s´eance la commande spool nomFichier.txt sous SQL*PLUS.
Cette commande permet de garder une copie des sorties ´ecran dans le fichier
nomFichier.
• SQL*PLUS poss`ede de nombreuses commandes pour mettre en forme les sor-
ties ´ecran des SELECT. Utilisez la commande COLUMN...FORMAT... pour don-
ner la largeur des colonnes des SELECT pour qu’elles ne soient pas trop larges.
Exemples :
– Largeur de 12 caract`eres pour la colonne table name :
COLUMN table name FORMAT A12
– Largeur de 5 positions num´eriques pour la colonne bytes :
COLUMN bytes FORMAT 99999
• Utilisez la commande DESCRIBE nomTable (ou nomV ue) pour afficher la liste
des attributs de nomTable (de nomV ue)
SQL> describe dictionary;
Nom NULL ? Type
------------ ------- ---------------
TABLE NAME VARCHAR2(30)
COMMENTS VARCHAR2(4000)
Khaled Jouini c 1/5
2. TP 3
Administration des Bases de Donn´ees
.
Exercices
Gestion du remplissage des blocs
1. Cr´eez les tables EMP et DEPT ci-dessous.
EMP(EMPNO : NUMBER, ENAME : VARCHAR, EADR : VARCHAR, DEPTNO : NUMBER)
DEPT(DEPTNO : NUMBER, DNAME VARCHAR, LOC VARCHAR)
2. Le dictionnaire de donn´ees est un ensemble de vues et de tables acc´ed´ees en
lecture seule, cr´e´ees et maintenues par le syst`eme et contenant toutes les informations
de toutes les composantes logiques et physiques du serveur de base de donn´ees.
Parmi les vues du dictionnaire, user tables est celle qui permet de consulter les
informations sur les tables poss´ed´ees par un utilisateur donn´ee.
1. Utilisez la commande DESCRIBE pour lister les attributs de la vue user tables
2. Donnez la requˆete SQL permettant d’afficher pour les tables EMP et DEPT
les valeurs par d´efaut de PCTFREE et de PCTUSED
3. Modifiez les valeurs par d´efaut des param`etres PCTFREE et PCTUSED des tables
EMP et DEPT en tenant compte des indications suivantes.
1. L’ensemble des mises `a jour augmentent la taille des tuples de la table EMP
de 20% et de la table DEPT de 5% en moyenne par rapport `a leurs tailles
initiales .
2. Pour un bloc stockant des tuples de la table EMP, il n’est pas souhait´e que
plus de 60% de l’espace du bloc soit inutilis´e
3. En supposant que la taille initiale d’un tuple de la table DEPT corresponde `a
1% de celle d’un bloc, il est souhait´e que lorsque les insertions sont interdites au
niveau d’un bloc, celles-ci sont autoris´ees `a nouveau au bout de la suppression
de 10 tuples en moyenne.
4. Modifiez la valeur de PCTFREE et de PCTUSED de la table EMP, en supposant que
les mises-`a-jour doublent la taille des tuples de cette table et que les insertions ne sont
autoris´ees `a nouveau dans un bloc que si trois-quarts des tuples qui y apparaissent
ont ´et´e supprim´es.
Khaled Jouini c 2/5
PCTFREE égale à la moitié de PCTUSED
3. TP 3
Administration des Bases de Donn´ees
Cr´eation d’un tablespace
5. Cr´eez un tablespace TS EMP en respectant les sp´ecifications suivantes :
• Le tablespace utilise deux fichiers f1.dbf et f2.dbf de taille respective 5 M et
10 M
• La taille de f1.dbf augmente automatiquement de 1 M chaque fois qu’il est
satur´e. La taille maximale de f1.dbf est de 40 M;
• La taille de f2.dbf augmente automatiquement de 1 M chaque fois qu’il est
satur´e. Il n’y a pas de limite impos´ee sur la taille que peut atteindre f2.dbf
• Les extensions sont g´er´es par le syst`eme
• La gestion des blocs libres se fait via des bitmaps
• La taille d’un bloc est celle par d´efaut (utilisez la commande show parameter
db block size pour trouver la valeur par d´efaut)
Consultation des informations sur les tablespaces
6. ORACLE fournit un certain nombre de vues dans son dictionnaire de donn´ees
pour consulter l’organisation physique d’une base. Les principales informations sur
les tablespaces sont accessibles via les vues suivantes du dictionnaire.
• La vue sys.dba extents donne la liste des extensions;
• La vue sys.dba segments donne la liste des segments;
• La vue sys.dba free space permet de mesurer l’espace libre au sein des ta-
blespaces;
• La vue sys.dba tablespaces donne la liste des tablespaces;
• La vue sys.dba data files donne la liste des fichiers.
En vous aidant de la commande DESCRIBE pour consulter les attributs des diff´erentes
vues et de la commande COLUMN...FORMAT... pour l’affichage des r´esultats, donnez
les requˆetes SQL qui permettent de trouver :
1. Le chemin d’acc`es (file name), la taille en octets (attribut bytes), le nombre
de blocs (attribut blocks) et la taille maximale (attribut maxbytes) de chacun
des fichiers du tablespace TS EMP (utilisez la vue sys.dba data files).
Pour les attributs taille et taille maximale, affichez les r´esultats en m´ega octets
2. Les diff´erents param`etres du tablespace TS EMP (utilisez la vue sys.dba tablespaces)
Khaled Jouini c 3/5
4. TP 3
Administration des Bases de Donn´ees
7. Les principaux attributs de la vue sys.dba segments sont r´esum´es dans le
tableau ci-dessous
Attribut Signification
segment name Nom du segment
owner Nom de l’utilisateur propri´etaire du segment
segment type Type du segment
tablespace name Nom du tablespace contenant le segment
size Taille du segment en octets
blocks Taille du segment en nombre de block Oracle
extents Nombre d’extension composant le segment
buffer pool Tampon m´emoire par d´efaut utilis´e pour garder en m´emoire
vive les blocs du segment
Ex´ecutez la requˆete suivante et expliquez son r´esultat :
SELECT segment name, segment type, owner
FROM sys.dba segments
WHERE tablespace name = ’TS EMP’;
Ajout d’un fichier `a un tablespace
8. Ajoutez un troisi`eme fichier f3.dbf de taille 1 M au tablespace TS EMP. La
taille de f3.dbf n’est pas extensible automatiquement.
Modification de la taille d’un fichier
9. Augmentez la taille de f3.dbf de 2 M
D´esactivation de la journalisation
10. D´esactivez la journalisation des ´ev´enements dans le tablespace TS EMP
Mise hors-ligne/en ligne d’un tablespace
11. Le renommage (ainsi que le changement de l’emplacement) d’un fichier appar-
tenant `a un tablespace suit les ´etapes suivantes :
1. Mise du tablespace hors-ligne
2. A partir du syst`eme d’exploitation, cr´eation d’une copie du fichier `a renommer
(ou dont l’emplacement est `a changer) avec le nouveau nom (dans le nouvel
emplacement). Par exemple sous MS DOS :
COPY ancienChemin ancienNom nouveauChemin nouveauNom
3. Utilisation de la commande SQL
”SQL> ALTER TABLESPACE RENAME DATAFILE ’ancienCheminancienNom’
TO ’nouveauChemin nouveauNom’”
Khaled Jouini c 4/5
5. TP 3
Administration des Bases de Donn´ees
4. Remise du tablespace en ligne
En suivant la proc´edure d´ecrite ci-dessus, renommez le fichier f3.dbf du tablespace
TS EMP
Calcul de l’espace libre dans un tablespace
12. La vue sys.dba free space d´ecrit l’ensemble des blocs libres (vides) pour
chaque tablespaces. Chaque ligne de cette table d´ecrit une suite de blocs contigus
libres se trouvant dans un tablespace donn´e. Les principaux attributs de cette vue
sont r´esum´es dans le tableau ci-dessous.
Attribut Signification
tablespace name Nom du tablespace contenant la suite de blocs libres
blocks Nombre de blocs formant la suite
bytes Taille de la suite en octets
Donnez la requˆete SQL permettant de trouver pour le tablespace ’SYSTEM’, le
nombre maximal de blocs contigus libres, le nombre minimal de blocs contigus libres,
la taille totale en kilo octets de l’espace libre et le nombre total de suites de blocs
libres contigus (fragmentation de l’espace libre).
D´eplacement de tables vers un tablespace
13. D´eplacer les tables EMP et DEPT vers le tablespace TS EMP
14. Ex´ecutez la requˆete suivante et expliquez son r´esultat :
SELECT segment name, segment type, owner
FROM sys.dba segments
WHERE tablespace name = ’TS EMP’;
Suppression d’un tablespace
15. Supprimez le tablespace TS EMP ainsi que tout son contenu et ses fichiers.
16. V´erifiez que le tablespace et ses fichiers ont ´et´e supprim´es
Khaled Jouini c 5/5