MySQL Server 8 : désactiver les moteurs inutilisés

Juste après avoir installé MySQL Server 8, j’ai voulu voir quels étaient les moteurs utilisés au niveau de l’instance. Oracle a décidé d’abandonner purement et simplement MyISAM pour le stockage des tables de la base MySQL.

La liste des moteurs utilisés

Pour disposer de la liste des moteurs utilisés, vous pouvez exécuter cette requête :

SELECT DISTINCT engine FROM information_schema.tables;

Les motorisations installées

Et grâce à cette autre requête, vous disposerez de l’ensemble des motorisations présentes et possibles dans votre instance MySQL :

SELECT 
	plugin_name 
FROM 
	information_schema.plugins 
WHERE 
	plugin_type='STORAGE ENGINE' 
AND 
	plugin_status='ACTIVE'

Désactiver les moteurs inutilisés

Afin de désactiver les moteurs MyISAM, MRG_MYISAM, BLACKHOLE et ARCHIVE, créez le fichier de configuration /etc/mysql/mysql.conf.d/engines.cnf et ajoutez-y les lignes suivantes :

[mysqld]
disabled_storage_engines = "MyISAM,MRG_MYISAM,BLACKHOLE,ARCHIVE"

Cette ligne de commande ne peut pas être ajoutée, hélas, avec SET PERSIST dans le fichier mysql-auto.conf du fait que la variable disabled_storage_engines est en lecture seule et non dynamique (Dynamic -> no).

Vérification

J’ai essayé, après avoir redémarré l’instance, de créer une table MyISAM sous MySQL Workbench. En vain. CQFD.

MySQL Server 8 : désactiver les moteurs inutilisés

 

MySQL / ,