Maison  >  Article  >  base de données  >  Exemple de tutoriel de conversion de myisam en innodb dans MySQL

Exemple de tutoriel de conversion de myisam en innodb dans MySQL

零下一度
零下一度original
2017-06-17 16:56:371185parcourir

Convertir myisam en innodb consiste à modifier le moteur de stockage de la table Si vous ne modifiez pas myisam en innodb selon la méthode standard, cela peut entraîner des dommages à la base de données et une perte de données. regardez la bonne méthode de conversion myisam.

<script>ec(2);</script>

Voici une brève introduction aux différences et aux méthodes de conversion entre les deux :

MyISAM : MyISAM est le moteur de stockage de base de données par défaut pour les versions antérieures à MySQL5.5. MYISAM offre un stockage et une récupération à grande vitesse, ainsi que des capacités de recherche en texte intégral, et convient aux applications nécessitant des requêtes fréquentes telles que les entrepôts de données. Mais il ne prend pas en charge les transactions ni les clés étrangères. Un défaut important du format MyISAM est que les données ne peuvent pas être récupérées une fois la table endommagée.

InnoDB : InnoDB est le moteur de stockage de base de données par défaut de MySQL version 5.5. Cependant, InnoDB a été acquis par Oracle Falcon, un nouveau moteur de stockage développé par MySQL, qui sera introduit dans MySQL version 6.0. InnoDB est sécurisé pour les transactions avec des capacités de validation, de restauration et de récupération après incident. Cependant, par rapport au moteur de stockage MyISAM, InnoDB écrit moins efficacement et prend plus d'espace disque pour conserver les données et les index. Néanmoins, InnoDB inclut la prise en charge des transactions et des clés étrangères, qui ne sont pas disponibles dans le moteur MyISAM.

MyISAM convient pour : (1) Effectuer de nombreux calculs de comptage ; (2) Les insertions sont peu fréquentes et les requêtes sont très fréquentes (3) Il n'y a pas de transactions ;
InnoDB convient pour : (1) les exigences de fiabilité sont relativement élevées ou des transactions sont requises (2) les mises à jour et les requêtes des tables sont assez fréquentes et les chances de verrouillage des tables sont relativement élevées ; (4) Les serveurs offrant de meilleures performances, tels que les serveurs de bases de données séparés, tels que la Base de données relationnelle RDS d'Alibaba Cloud, recommandent le moteur InnoDB.

MySQL fournit généralement une variété de moteurs de stockage, qui peuvent être visualisés en exécutant la commande suivante :

Entrez d'abord MySQL en mode ligne de commande

pour voir le stockage fourni par MySQL library
mysql> use wpsql; Il indique le moteur de stockage actuellement utilisé par la table) :

mysql> show create table wp_posts


Modifier la table wp_posts vers le moteur de stockage InnoDB (vous pouvez également utilisez cette commande pour remplacer InnoDB par MyISAM) :

mysql> ALTER TABLE wp_posts ENGINE=INNODB;

Si vous souhaitez changer le moteur de stockage de l'ensemble de la table de la base de données, vous devez généralement modifier une table par une, ce qui est relativement fastidieux. Vous pouvez d'abord exporter la base de données, obtenir SQL et remplacer tous les MyISAM par INNODB , puis
importer la base de données

.


Une fois la conversion terminée, redémarrez mysql

> service mysqld restart

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn