Développée par le monde libre sous licence GNU
(racheté par Sun en 2007 qui garde la méthode de distribution),
la base de donnée MySQL est principalement utilisée sur les hébergements
Internet de type Linux, en coopération avec le langage
PHP mais est utilisable sur de nombreux systèmes d'exploitation (y compris
Windows avec EasyPhp).
Il est compatible avec Base, la base de donnée de la série
OpenOffice.
MySql est une base
de donnée Client -
serveur. Le serveur SQL est multithread (il accepte
plusieurs requêtes simultanées) et intègre différents clients (dont PHP),
librairies.
Chaque base de donnée peut inclure plusieurs
tables. Chaque table inclut les informations brutes, comme entrées par
l'utilisateur. Via
différentes commandes, MySql est relationnel, il permet de créer des relations
entre différentes tables via des requêtes (lignes de commandes). La base de donnée en entière est stockée sous forme de dossier. Les tables
sont enregistrées sous forme de fichiers (3 fichiers par table). Cette solution
permet souvent de transférer une base de donnée complète sans passer par des
importations en gardant le charset, ce qui évite les erreurs de caractères
accentués. Pour les base hébergées, cette solution nécessite le plus souvent
de modifier les privilèges utilisateurs et CHMOD de chaque fichier.
L'utilisation se fait par droit
d'accès sur la base de donnée, mais aussi sur chaque table.
Différents formats de champs sont autorisés:
en texte (avec ou sans distinction entre les majuscules et minuscules),
numériques et date / heure. Différentes contrainte et propriétés peuvent
également être utilisés sur les champs: clé primaire
(un seul par table), vides autorisés, type index qui accélère les tris,
unique.