Maison >base de données >tutoriel mysql >Comment puis-je convertir en masse toutes les tables MyISAM en InnoDB dans MySQL ?
Modifier les tables de MyISAM vers InnoDB une par une peut être fastidieuse. L'article suivant fournit une solution complète pour convertir rapidement toutes les tables MyISAM d'une base de données en InnoDB à l'aide de SQL.
Pour réaliser cette conversion groupée, exécutez l'instruction SQL suivante :
SET @DATABASE_NAME = 'name_of_your_db'; SELECT CONCAT('ALTER TABLE `', table_name, '` ENGINE=InnoDB;') AS sql_statements FROM information_schema.tables AS tb WHERE table_schema = @DATABASE_NAME AND `ENGINE` = 'MyISAM' AND `TABLE_TYPE` = 'BASE TABLE' ORDER BY table_name DESC;
Assurez-vous de remplacer name_of_your_db par le nom de votre base de données.
Après avoir exécuté l'instruction SQL ci-dessus, la sortie fournira une liste d'instructions SQL qui convertissent chaque table MyISAM en InnoDB. Copiez ces instructions dans une nouvelle fenêtre de requête SQL et exécutez-les. Cela exécutera la conversion de toutes les tables MyISAM de votre base de données.
InnoDB offre plusieurs avantages par rapport à MyISAM, notamment :
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!