1. Universit´e de Sousse
I.S.I.T.Com.
Administration des Bases de Donn´ees
TP 3
Dur´ee : 3 heures
Khaled Jouini
2011-2012
Notes pr´eliminaires
• 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 (n’oubliez pas de r´ecup´erer le fichier `a la fin de la s´eance!).
• Utilisez la commande HOST pour ex´ecuter des commandes du syst`eme d’exploitation
`a partir de SQL*PLUS
• Lors de la modification d’un param`etre d’initialisation avec ALTER SYSTEM,
v´erifiez au pr´ealable si le param`etre est dynamique ou statique et d´eterminez
en cons´equence la valeur de l’option SCOPE.
Sommaire
1 Gestion de la SGA 2
2 Gestion des utilisateurs et des rˆoles 3
3 Gestion des profils 4
4 Cr´eation manuelle d’une base de donn´ees 5
Khaled Jouini c 1/5
2. TP 3
Administration des Bases de Donn´ees
.
Exercices
1 Gestion de la SGA
Consultation des tailles des tampons
1.1. ´Ecrivez la requˆete SQL permettant de connaˆıtre le mode de gestion de la SGA
(automatique ou manuelle).
1.2. Si la gestion de la SGA est automatique, rendez la manuelle. La modifica-
tion ne doit affecter que l’instance en cours.
1.3. ´Ecrivez la requˆete SQL permettant de trouver la taille du tampon de la base
de donn´ees, du pool partag´e et du tampon de journalisation
1.4. En supposant que votre base de donn´ees connaissent un pic d’activit´es et que
l’ex´ecution des requˆetes en devient lente, augmentez de 10% la taille des tampons
permettant d’acc´el´erer l’ex´ecution des requˆetes. La modification ne doit affecter
que l’instance en cours.
1.5. ´Ecrivez la requˆete SQL permettant de calculer le nombre maximal de blocs
Oracle que peut contenir le tampon de la base de donn´ees
Cr´eation de tablespaces
1.6. Tapez la requˆete suivante pour trouver les tablespaces de donn´ees (PERMANENT)
et les tablespaces temporaires (TEMPORARY) existant dans la BD
SQL> SELECT tablespace name, contents FROM sys.dba tablespaces WHERE contents
IN (’PERMANENT’, ’TEMPORARY’);
1.7. S’il existe un tablespace de donn´ees appel´e dataTs, le supprimez, ainsi que
son contenu et ses fichiers.
1.8. Cr´eez un tablespace de donn´ees dataTs utilisant un seul fichier de taille 20M
non extensible et dont la taille des blocs est de 16 Kilooctets. Indication : vous
devez au pr´ealable cr´eer un tampon pouvant accueillir des blocs ayant pour taille
16K.
Khaled Jouini c 2/5
3. TP 3
Administration des Bases de Donn´ees
2 Gestion des utilisateurs et des rˆoles
Cr´eation de rˆoles
2.1. Accordez le privil`ege de cr´eation de session create session `a tous les util-
isateurs.
2.2. Cr´eez un rˆole ETUDIANT identifi´e par le mot de passe i$itc0m
2.3. Accordez les privil`eges de cr´eation de table (create table) et de cr´eation,
de modification et de suppression de tablespace (resp. create tablespace, alter
tablespace et drop tablespace) au rˆole ´etudiant.
2.4. Ex´ecutez la requˆete ci-dessous pour v´erifiez quels privil`eges syst`eme ont ´et´e
accord´es au rˆole ETUDIANT
select * from DBA SYS PRIVS where grantee=’ETUDIANT’
Cr´eation d’utilisateurs
2.5. Cr´eez un tablespace temporaire tempTs utilisant un seul fichier de taille 2M
non extensible.
2.6. Cr´eez un nouvel utilisateur ayant pour login user1 et pour mot de passe
change on connect, en respectant les indications suivantes :
• Les objets (tables et index) cr´e´es par le nouvel utilisateur sont par d´efaut
stock´ees dans le tablespace dataTs
• Les requˆetes ex´ecut´ees par le nouvel utilisateur utilisent (quand c’est n´ecessaire)
le tablespace temporaire tempTs
• L’utilisateur peut utiliser au plus 10M de l’espace total de dataTs
• Le mot de passe doit ˆetre modifi´e `a la premi`ere connexion de l’utilisateur
2.7. Cr´eez un deuxi`eme utilisateur ayant pour login user2 et pour mot de passe
reseau3, en respectant les indications suivantes :
• Les objets (tables et index) cr´e´es par le nouvel utilisateur sont par d´efaut
stock´ees dans le tablespace dataTs
• Les requˆetes ex´ecut´ees par le nouvel utilisateur utilisent (quand c’est n´ecessaire)
le tablespace temporaire tempTs
• L’utilisateur peut utiliser au plus 5M de l’espace total de dataTs
Khaled Jouini c 3/5
4. TP 3
Administration des Bases de Donn´ees
2.8. Cr´eez un troisi`eme utilisateur identifi´e par le SE, en respectant les indications
suivantes :
• Les objets (tables et index) cr´e´es par le nouvel utilisateur sont par d´efaut
stock´ees dans le tablespace dataTs
• Les requˆetes ex´ecut´ees par le nouvel utilisateur utilisent (quand c’est n´ecessaire)
le tablespace temporaire tempTs
• L’utilisateur peut utiliser au plus 5M de l’espace total de dataTs
V´erifier que l’utilisateur a bien ´et´e cr´eer et qu’il a le droit de se connecter au syst`eme
2.9. Attribuez le rˆole ETUDIANT `a user1
2.10. Connectez l’utilisateur user1, puis v´erifiez la liste des privil`eges `a sa dispo-
sition avec la requˆete ci-dessous
select * from SESSION PRIVS
2.11. Cr´eez la table DEPT ci-dessous
PROJET(PID : NUMBER, NOM : VARCHAR, DEBUT : DATE, FIN : DATE)
2.12. Accordez aux utilisateurs user2 le privil`ege de consulter (SELECT) la table
PROJET et ainsi que le droit de modifier l’attribut NOM. user2 doit pouvoir transmet-
tre ces privil`eges aux autres utilisateurs.
2.13. Connectez l’utilisateur user2 et v´erifiez la liste des privil`eges `a sa disposition
2.14. Trouvez le nom des tables (TABLE NAME) poss´ed´ees par user2
2.15. Trouvez le nom des tables (TABLE NAME) visibles par user2
2.16. Re-connectez vous avec le compte administrateur, puis retirez le rˆole ETUDIANT
de user1. V´erifiez les privil`eges `a la disposition de user1
3 Gestion des profils
Cr´eation de profils
3.1. Cr´eez un profil PETIT en respectant les limitations suivantes :
• le nombre de sessions simultan´ees n’exc`edent pas 3 (sessions per user 3)
• chaque session ne peut pas exc´eder 900 secondes (connect time 900)
• chaque session ne peut rester inactive au-del`a 500 secondes (idle time 500)
Khaled Jouini c 4/5
5. TP 3
Administration des Bases de Donn´ees
3.2. Cr´eez un profil GOURMAND en respectant les limitations suivantes :
• le nombre de sessions simultan´ees est illimit´e
• le temps imparti `a chaque session est illimit´e
• le compte est verrouill´e si au bout de trois tentatives, l’utilisateur n’a toujours
pas fournit le bon mot de passe et/ou login (failed login attempts 3)
Affectation et suppression de profils
3.3. Consultez les informations sur les profils cr´e´es (en vous aidant de la vue
dba profiles).
3.4. Attribuez le profil GOURMAND `a user1 et le profil PETIT `a user2.
3.5. Supprimez le profil PETIT.
4 Cr´eation manuelle d’une base de donn´ees
4.1. Cr´eez un serveur de base de donn´ees dbsample Oracle avec les sp´ecifications
suivantes :
1. l’architecture OFA doit ˆetre respect´ee
2. les fichiers de journalisations ont une taille de 50M et ceux de donn´ees, tem-
poraires et d’annulation 20M
3. Le nombre maximal de groupes de journalisation est de 5. Chaque groupe ne
peut comporter au plus que 3 membres
4. Le nombre maximal de fichiers de donn´ees est de 100
5. Une seule instance est associable `a la BD
6. L’encodage des caract`eres est US7ASCII
7. Les fichiers stockant les tablespaces system et sysaux ont pour tailles 100M et
sont autoextensibles sans limitation de taille
4.2. Mettez le serveur de base de donn´ees dbsample Oracle en mode auto-d´emarrage
Khaled Jouini c 5/5