Transformation efficace des tables MyISAM vers InnoDB
MyISAM, bien que largement utilisé dans le passé, a pris du retard sur InnoDB en termes de fonctionnalités et de performances . Pour cette raison, il peut être souhaitable de convertir vos tables MyISAM en InnoDB. Bien que vous puissiez modifier manuellement chaque table individuellement, il existe une approche plus efficace pour les conversions de masse.
Requête pour identifier les tables MyISAM
Commencez par identifier toutes les tables MyISAM de votre base de données. . 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;
Conversion des tables en InnoDB
Une fois que vous avez la liste des tables qui doivent être converties, copiez la sortie du SQL requête et collez-la dans une nouvelle instruction SQL. Exécutez cette nouvelle instruction pour exécuter les conversions :
<Copy-pasted SQL query>
Cela convertira efficacement toutes les tables MyISAM de votre base de données en InnoDB. Veuillez noter que les tables déjà InnoDB ne seront pas affectées par ce processus de conversion.
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!