Sunteți pe pagina 1din 8

TP n2 Administration de bases de donnes PostgreSQL

SLAM3 BTS2 18 et 25/09/2014


Avant de commencer, vous devez disposez d'un serveur PostgreSQL fonctionnel (virtuel),
ainsi que d'une machine cliente capable de se connecter au serveur (voir TP n1).
Pour toutes les questions de ce TP, donnez la commande SQL ( tester sur vos
machines) ainsi que l'utilisateur connect pour raliser cette commande. Vous devrez
raliser un maximum de commande depuis votre client.
Vous vous aiderez du support fourni sur Chamilo, ainsi que de la documentation en ligne
de PostgreSQL : http://docs.postgresqlfr.org/
N'oubliez pas de copier toutes les commandes saisies (dans ce fchier par
exemple).

Questions
0 - Comment redmarrer le service du serveur Postgresql ?
Il faut saisir la commande sudo service postgresql restart sur le serveur.
1 - Crer un utilisateur de la base de donnes nomm Toto qui sera un utilisateur sans
privilges particuliers (attention il faut que cet utilisateur puisse se connecter).

2 - Crer un utilisateur nomm admin (mot de passe : mpadmin) qui aura des privilges
dadministrateur (attention il faut que cet utilisateur puisse se connecter).

3 Vrifer dans une vue systme ou l'aide d'un raccourci que ces 2 utilisateurs ont
TP2 SLAM3 2015/2016

bien t crs. Que signife le contenu de chaque colonne ?


\du
Role name : Noms des goupes/utilisateurs
List of roles Attributes : Listes des privilges attribus
Member of : Nom du groupe attribu
4 Ajouter un mot de passe au compte utilisateur Toto.

5 Crer un groupe (rle) gradmin et un groupe (rle) gruti.

6 Faire en sorte que Toto appartienne au groupe gruti et que admin appartienne
gradmin.

7 Vrifer grce aux raccourcis que ces 2 groupes ont bien t crs. Que signife le
contenu de chaque colonne ?

8 Vrifer que Toto peut se connecter depuis le client avec son compte utilisateur la
base de donnes template1.

TP2 SLAM3 2015/2016

9 - Pouvez-vous crer une table (si oui, noubliez pas de la supprimer ensuite) ?
Pouvez-vous crer un utilisateur (si oui, noubliez pas de le supprimer ensuite) ?

10 Sur le serveur, crer une nouvelle base de donnes nomme baseordi, en tant
connect avec l'utilisateur postgres.

11 - Vrifer dans une vue systme ou via un raccourci que cette base de donnes a bien
t cr. Que signife le contenu de chaque colonne ?

12 Dans la base de donnes baseordi, crer les tables suivantes en tant


qu'administrateur :
Les lments souligns reprsentent les cls primaires, et les # les cls trangres.
ORDINATEUR (no_ordi, nom, prix_total, no_carte_mere#)
CARTE_MERE (no_carte, marque, prix_carte)
TP2 SLAM3 2015/2016

Vous placerez les contraintes de cl primaire, cl trangre.

postgres@ubuntu : psql baseordi

13 - Saisir les occurrences suivantes dans chaque table.


CARTE_MERE
no_carte marque
prix_carte
1
MSI
100
2
Asus
120

ORDINATEUR
no_ordi nom
105
bureautique 1
112
multimedia 1
113
multimedia 2
114
bureautique 2
117
bureautique 3

TP2 SLAM3 2015/2016

prix_total
300
400
450
350
320

no_carte_mere
1
1
2
1
2

14 Depuis le client, vrifer que le compte utilisateur Toto ne vous permet pas dinsrer
la carte mre supplmentaire suivante :
no_carte marque
prix_carte
3
Asrock
40
Pouvez-vous visualiser le contenu de la table ?
Faites linsertion, depuis le client, en tant quadministrateur.
Sur la machine hte :

15 Ajouter au groupe gruti le droit de raliser des slections, des insertions, et des
suppressions sur la table carte_mere. Vrifer que cela fonctionne bien avec votre
compte utilisateur.
Sur le serveur :

16 Est-ce que ce sont les droits du groupe ou ceux de l'utilisateur du groupe qui
prvalent ?
Les droits du groupe ne prvalent pas sur ceux de l'utilisateur car si un utilisateur
n'est pas autoris a le faire il ne pourra pas le faire meme si il est dans un groupe qui peu.
17 Crer un nouveau groupe grinfo.

18 Attribuer grinfo uniquement le droit de visualiser le contenu de la table


carte_mre.

TP2 SLAM3 2015/2016

19 Ajouter Toto dans ce groupe.

20 Quels sont alors les droits efectifs de Toto ? Quen dduisez-vous ?


Toto a le droit de vu donc on peut en deduire que le groupe donne la permission a
des utilisateurs d'obtenir des droits limiter.
21 Vrifer les droits des utilisateurs.

22 Vrifer les droits des groupes l'aide d'un raccourcis.

23 - Ajouter la colonne marque_ordi dans la table ordinateur.

24 Avec le compte Toto, crer une vue contenant uniquement les ordinateurs dont le
prix est suprieur 390 .
Visualiser le contenu de la vue. Que constatez-vous ? Est-ce normal ? Comment
rsoudre ce problme ?

TP2 SLAM3 2015/2016

25 Supprimer cette vue.

26 En tant quadmin, crer cette vue et donner Toto le droit de visualiser son
contenu.
Vrifer que cela fonctionne.
grant select on ordinateur to toto
select* from ordinateurs
27 Attribuer tout le monde le droit de visualiser le contenu de la table ordinateur.
grant select on ordinateur

28 - Renommer la table ordinateur en ordi.


29 Ajouter la table ordi la contrainte disant que le prix_total doit tre positif.
Vrifer que la contrainte fonctionne.
30 Crer un schma pour Toto en y mettant une vue des ordinateurs dont le prix est
suprieur 350.
31 Connectez vous avec Toto et lister le contenu de cette vue. Qui peut travailler avec
cette vue ?
32 Ajouter une table au schma.

TP2 SLAM3 2015/2016

Travail faire : Portefeuille de comptences


Crez et compltez l'activit suivante dans votre portefeuille de comptences :
Installation et manipulation d'un serveur de base de donnes PostgreSQL
Attention : les rponses aux questions poses ne sufsent pas !
Vous devez rdiger une synthse de quelques pages afn d'expliquer l'installation et le
fonctionnement d'un serveur de base de donnes PostgreSQL (gestion des bases de
donnes et des utilisateurs).
Vous partagerez l'adresse de votre portefeuille pour que l'on puisse valuer cette activit.
Le portefeuille de comptences ne sera pas valu ici, par contre l'activit devra tre
intgre au site web (pas de fchier pdf ou odt joint).
La note comptera pour le module SLAM3.

TP2 SLAM3 2015/2016