Ce qui aurait pu être un article intéressant (c'est toujours bien d'avoir conscience des forces et des faiblesses de tel ou tel système que l'on utilise) c'est transformé en pamphlet déjà rien que le titre...
MySQL et MariaDB ne sont pas pires que leurs concurrent commerciaux. Après plus de 30 ans d'informatique j'ai assez donné pour le savoir. Oracle et MSSQL ont aussi leurs biais et que dire de DB2, OpenIngres, Gupta, Informix, Sybase, Interbase, Firebird and Co ? (J'ai un moment ou l'autre travaillé avec et même HyperFile, le client est roi on ne fait toujours le choix)
J'utilise MySQL depuis la version 4 et MariaDB depuis la version 10.0
Quelques perles :
Pour information, la collation(3) par défaut des serveurs et des bases de données dans MySQL est « latin1_swedish_ci » ! Beaucoup de développeurs n'ont pas remarqué cela et laissent en production cette collation qui peut s'avérer une bombe à retardement en matière de gestion des données accentuées, car le jeu de caractères accentués de la langue suédoise n'est pas compatible avec les principaux accents du français.
Quand on est pas capable de choisir la bonne collation, le bon jeu de caractères, à la création d'une base ou d'une table, on reste chez soi... Et on ne se prétend pas "Développeur" déjà...
Après ça ne pose que très, très peu de problème avec les caractères accentués français, j'en ai déjà fait l'expérience... Surtout que j'évite de mettre des colonnes avec du texte dans mes clés et mes index... Un export en UTF8, mise à jour de la table avec la bonne collation et ré-import des données aura tout fait de régler le problème...
Imaginez le jour où vous aurez besoin de rectifier des numéros de facture, parce que le système informatique étant tombé en panne, on a édité des factures à la main.
C'est de toute façon une TRES MAUVAISE HABITUDE d'updater les clés dans n'importe quel SGBD...
Imaginez avec des contraintes de clés étrangères dans d'autres tables....
Vous n'êtes pas aussi "PRO" que ça finalement...
Allez maintenant dans le répertoire de stockage de votre base, par exemple, par défaut, pour MariaDB sous Windows c’est : C:\Program Files\MariaDB 10.3\data.
Vous y trouverez les répertoires des bases, sachant que pour MariaDB/MySQL, une base c’est avant tout un répertoire.
Perso je n'utilise pas ce paramétrage pour la simple raison que c'est un endroit sensible pour les anti-virus sous Windows en particulier Kapersky et BitDefender, ils ont tendance à considérer toute tentative d'écriture comme suspecte et ralentissent les écritures dans la base...
Il vaut mieux configurer MariaDB ou MySQL pour placer le répertoire dans un endroit plus neutre (C:\MySQL\data ou autre) et n'accorder les accès en écriture qu'au système et aux administrateurs....
Çà évitera du coup à un simple utilisateur de pouvoir faire ce que vous faites plus haut.... Ça montre encore vos lacunes...
Que ce soit n'importe quel SGBD la configuration par défaut n'est jamais optimale... Il faut toujours adapter celle-ci...
Dans certains SGBDR, les fichiers de la base sont tellement sécurisés, qu’il n’est même pas possible d’en déplacer le stockage, supprimer des tables ou copier les fichiers.
C’est le cas, en particulier, de Microsoft SQL Server où le système va interdire une telle manipulation.
Si j'arrête les services SQLServer, je peux craquer tous les fichiers que je veux...
A peine plus sécurisé donc....
Idem avec Oracle....
SELECT 3/2 doit donner 1. MySQL/MariaDB renvoie 1.5 !
Vous faites une division en virgule flottante et ça vous choque d'avoir 1.5 comme résultat ?
Consultez la documentation MySQL avant d'écrire des bourdes !
Utilisez SELECT 3 div 2 plutôt (comme en Pascal) pour une division entière....
Je pourrais continuer longtemps comme ça...
Un peu constructif :
Les avantages que je trouve à MariaDB
- Facilité d'installation
- Légèreté
- Empreinte mémoire et CPU raisonnable (y'a besoin pas de 16 cores, 32 Go de mémoire même avec des gros volumes)
- Très bonne réactivité (encore faut il que les clés, les index soient utilisés à bon escient)
- Supporte de très gros volumes sans broncher sans dégradation visible des performance (voir le point au dessus)
- Bonne compatibilité ascendante (c'est facile de passer de MySQL 5.x à MariaDB 10.x)
Les inconvénients :
- Depuis qu'Oracle a repris MySQL ce dernier ressemble de plus en plus à une usine à gaz
- Tous les outils d'admin sont en mode console (ça peut en rebuter certains comme le rédacteur de cet article)
- HeidiSQL fournit avec MariaDB est une bouse ça c'est sur (plantages réguliers, ça rame dès que l'on a des très grosses tables)
- C'est dommage que les MySQL GUI Tools n'évoluent plus ils étaient de qualité nettement supérieure à HeidiSQL
Pour ma part :
Avec de nombreuses installations en service, et quelques crash bien sur comme sur tout système, je n'ai jamais eu à constater la moindre perte de données que ce soit sous Windows ou Linux....
Après c'est comme tout : Lorsque l'on utilise les choses à bon escient et en respectant de bonnes pratiques (dans les règles de l'art) tout ce passe bien. Lorsque l'on utilise un logiciel pour autre chose que ce qu'il a été conçu à la base en essayant de lui tordre le bras... Et bin ça tourne à la catastrophe...
14 |
5 |