Logo MySQLMa fonction actuelle inclut (entre autre) l’administration et la gestion de plusieurs serveurs de bases de données : MySQL, PostgreSQL, et MS SQL. Pour assurer une gestion efficace et rapide de tâches récurrentes, il existe plusieurs moyens pour s’affranchir de l’administration en ligne de commande.

Je vais présenter dans ce billet 4 outils graphiques, vous permettant de gérer et de monitorer vos instances MySQL.



MySQL Administrator (gratuit)

MySQL Administrator est un logiciel gratuit édité et distribué par la société MySQL AB : il permet d’administrer, de gérer et de monitorer de multiples instances MySQL (un serveur physique peut héberger plusieurs instances MySQL).

MySQL Administrator : écran de connexion, sélection de l'instance MySQL

Fonctionnalités :

  • gestion des utilisateurs et des privilèges,
  • monitoring de la santé de votre serveur : espace disque, nombre de requêtes, taille des index, etc.,
  • gestion du schéma des bases de données,
  • système de sauvegarde/restauration rapide,
  • informations clés et détails sur le serveur,
  • état des connexions,
  • informations sur l’état de la réplication,
  • visualisation des logs,
  • etc.

MySQL Administrator : écran d'accueil, informations récapitulatives
Informations sur le serveur

MySQL Administrator : détails d'une table
Détails sur une table

MySQL Administrator : health monitoring
Health Monitoring

Il est intéressant de noter que MySQL Administrator fait partie de MySQL Tools, une suite de 4 outils graphiques gratuits édités par MySQL AB :

  • MySQL Administrator : logiciel vous permettant d’administrer et de monitorer vos serveurs MySQL,
  • MySQL Migration Toolkit : framework doublé d’un assistant, Migration Toolkit vous permet de migrer d’une base propriétaire (MS SQL, Oracle, etc.) vers MySQL (voir image ci-dessous),
  • MySQL Query Browser : outil de création (mode texte, ou par drag and drop), d’exécution et d’optimisation de requêtes MySQL,
  • MySQL Workbench : outil de modélisation pour MySQL vous permettant également de faire du reverse-engineering.

MySQL Migration Toolkit : outil avancée pour migration d'une base de données vers MySQL
Migration Toolkit : assistant pour migrer vos bases propriétaires vers MySQL

Navicat for MySQL (payant)

Navicat for MySQL est également un logiciel de gestion de vos bases de données MySQL : très complet, il apporte des fonctionnalités très appréciables comme l’import de données, ou encore la synchronisation (données et/ou structure) entre deux bases de données. Il vous en coûtera entre 95$ et 170$ pour acquérir une licence.

Fonctionnalités :

  • plusieurs modes de connexion : SSL, tunnel SSH, tunnel HTTP,
  • gestion des utilisateurs et des privilèges,
  • gestion des bases de données et de leurs structures,
  • synchronisation de données et de structure entre deux bases,
  • assistant de sauvegarde/restauration : possibilité de programmer des sauvegardes,
  • complétion de code,
  • procédures stockées,
  • import et export de données (à partir d’Access, d’Excel, XML, PDF, et TXT),
  • etc.

Navicat for MySQL : vue d'une table
Vue d’une base de données

Navicat for MySQL : synchronisation de deux bases de données
Procédure de synchronisation entre deux bases de données

Note : il existe également une version de Navicat pour Postgres.

Spotlight on MySQL (gratuit)

Spotlight on MySQL est un outil un peu particulier, dans la mesure où il est dédié au monitoring, et dont les pré-requis sont assez stricts. Il ne fonctionne en effet que pour MySQL 5, et uniquement avec le moteur de stockage InnoDB.

Cependant, pour les personnes concernées, c’est l’outil idéal pour identifier les problèmes de performance et les goulots d’étranglement.

Spotlight on MySQL : vue temps réel des transactions de votre instance MySQL
Vision globale et temps réel du comportement de votre MySQL

Spotlight on MySQL : détails de l'activité de votre instance (nombre de requêtes, etc.)
Graphiques détaillés de monitoring

A noter : son éditeur, Quest Software, propose également d’autres outils (Toad, Data Analysis, etc.) pour d’autres types de bases de données (Oracle, DB2, Sybase, SQL Server).

PhpMyAdmin (gratuit)

Enfin, the last but not the least, l’outil graphique de gestion MySQL le plus utilisé au monde, PhpMyAdmin : développé en PHP, il permet d’accéder à une gestion complète de vos bases grâce à un simple navigateur.

PhpMyAdmin : gestion en ligne de vos bases de données MySQL en PHP

Quel outil utiliser ?

C’est à vous de décider : c’est essentiellement une question d’ergonomie et de fonctionnalités. PhpMyAdmin conviendra dans la majorité des cas, pour administrer des petites et moyennes bases de données, mais l’adoption d’un autre logiciel peut se faire en parallèle.

Mon choix se porte sur la suite d’outils MySQL Tools pour plusieurs raisons : ce sont des logiciels « officiels » édités par la société conceptrice de MySQL, ils sont complémentaires et permettent de faire 99% des tâches possibles. Cependant, je garde pour réflexe de toujours installer un PhpMyAdmin sur chaque serveur de bases de données.