PresentationMySQL.pps

publicité
CEC A.-CHAVANNE
Sites Web et bases de données
1
UNE BASE DE DONNÉES :
POURQUOI ?

Manipulation de grandes quantités d’information
–
–
–


Modélisation des données (méthode)
Securité (pannes)
–

2
représentation des données de l’application
interrogation des données (requêtes, langage)
optimisation des requêtes
Gestion de droits d’accès
Accès multiples en simultané
MySQL : un SGBD à la mode
3
QU'EST-CE QUE MySQL ?

C'est un SGBD relationnel
–
–
–
Gratuit (www.mysql.com), sous la GNU GPL
Disponible sous Windows et tous les Unix
Propose le minimum vital


–
Qualités reconnues (outre la gratuité):



4
(Presque) tout le langage SQL
Stockage, indexation, optimisation
Simplicité
Efficacité
Robustesse
QUELQUES LIMITES DE MySQL

Pas de transactions !
–

Pas de requêtes imbriquées
–

Pas très grave !?
Pas d'environnement de développement
–
5
Inadapté pour les applications transactionnelles
(finances, réservations)
Tout se fait en mode texte, sauf avec certains “Frontend” !
SITUATION ACTUELLE

Très prisé pour les sites web
–
–

En fort développement
–

–
6
Intégration des transactions ?
Beaucoup de « contributions » extérieures
–

Très bonne intégration avec Apache et PHP
Tout est gratuit !
API en C++, Perl, PHP, Java (JDBC)
Des clients graphiques, des utilitaires
En résumé, un moteur SQL, simple et efficace
ARCHITECTURE DE MySQL
mysql
Connexion
Connexion
phpMyAdmin
Serveur
mysqld
Connexion
utilisateur
mysqlimport
var
Connexion
mysqladmin
7
mysql Films
LES BASES DE DONNÉES


Une base = un répertoire !
Une table = 3 fichiers !
DATADIR
FILMS
mysql
8
(/mysql/var)
Film.MYD
Film.MYI
Film.frm
Artiste.MYD
Artiste.MYI
Artiste.frm
rigaux_p
Données
Index
Structure
LES DROITS

Un utilisateur peut avoir plusieurs types de droits:
–
–
–
–

9
sur le serveur (administration)
sur les bases et tables (création, destruction)
sur les données (lecture, écriture)
sur d'autres utilisateurs (transmission de droits)
Le compte root est le DBA: il a tous les droits sur
tout
CRÉATION DE BASES ET DE TABLES
On peut créer des bases soit :
 Comme root directement sur le serveur
 En ayant une entrée par phpMyAdmin
 En ayant une entrée par un “front-end”
10
TYPES DE DONNÉES MySQL

MySQL reconnaît les principaux types SQL2 :
–
–
–
–
–
–
–
–
11
–
INTEGER : les entiers
FLOAT : numériques flottants
DECIMAL (M, D) : numériques exacts
CHAR : chaînes de longueur fixe
VARCHAR :chaînes de longueur variable
TEXT : textes longs
DATE : dates
TIME : moments
+ quelques autres
MySQL EN RÉSUMÉ


Tout à fait conforme à la norme SQL ANSI
Avec des extensions (très utiles)
–
–
–
12
Types de données (TEXT, BLOB)
Contraintes (AUTO_INCREMENT)
Beaucoup de fonctions
Téléchargement