Notre expérience et notre avis.

Nous utilisons la base de donnée Mysql pour l'ensemble des applications critiques de l'entreprise et ce depuis 1999.

Nos bases de données représentent un volume d'environs 1Go répartis en 5 bases de données en une centaine de tables dont certaines dépassent les 2 millions d'enregistrements.

Le moteur Mysql brille par sa performance et les accès aux grosses tables sont toujours instantanés.

La fiabilité est totale. En 4 ans d'utilisation intensive, nous n'avons jamais "planté" le serveur et aucun bug n'à été reporté.
A noter que la maintenance de la base de données est quasi inexistante. Un utilitaire (MyIsamChk) permet de vérifier l'intégrité de la base et de réparer le cas échéant les rarissimes problèmes.

Nous utilisons ce moteur de bases de données à travers des programmes écrits en Delphi (Borland) via odbc.

Pour nos programmes Web écrits en PHP, l'accès à Mysql est natif.

L'utilisation d'odbc s'avère très souple et très pratique. Elle n'induit aucune perte de performance perceptible. Par contre, elle autorise l'accès à Mysql via les environnements bureautiques tels que Microsoft Office et OpenOffice.

A noter que l'utilisation de Mysql via Access de Microsoft offre une grande souplesse d'utilisation et de très bonnes performance tant que l'on n'utilise pas de relations trop poussées entre les tables.

Par contre, le moteur de bases de données Mysql n'est pas à proprement parler "relationnel" et les liaisons entre tables avec des syntaxes de type "inner join" ou "left outer join" peuvent s'avérer très lentes pour peux que l'on ai pas créé les index appropriés.

De plus, à ce jour Mysql n'intègre pas de fonctions avancées tels que les triggers et les procédures stockées.

Le "commit" et le "rollback" ne sont pas plus gérés.

Ces fonctions font défaut si l'on veut comparer Mysql aux ténors des systèmes de bases de données commerciaux tels de Oracle, DB2, SQL Serveur.

Toutefois, Mysql n'à pas à rougir de ses performances et les fonctions manquantes peuvent être contournées par un peu de programmation annexe.

On peut également s'interresser à Postgres, qui comble un certain nombre de ces lacunes.