Maison > base de données > tutoriel mysql > le corps du texte

Explication détaillée du choix du moteur approprié et de la conversion du moteur pour MySQL

黄舟
Libérer: 2017-09-21 11:00:12
original
1105 Les gens l'ont consulté

Comment choisir le bon moteur ? Voici un résumé simple : "Sauf si vous avez besoin d'utiliser certaines fonctionnalités qu'InnoDB ne possède pas, et qu'il n'y a pas d'autre moyen de le remplacer, vous devez donner la priorité au moteur InnoDB."

Sauf si cela est absolument nécessaire, sinon, il n'est pas recommandé de mélanger plusieurs moteurs de stockage, sinon cela pourrait provoquer une série de problèmes complexes et quelques bugs potentiels.

Plusieurs facteurs majeurs à considérer lors de l'utilisation de différents moteurs :

1. Transactions

Si prise en charge des transactions nécessaire, alors InnoDB ou XtraDB sont actuellement les plus stables. Si les transactions ne sont pas requises et que les opérations principales sont SELECT et INSERT, MyISAM est un bon choix.

2. Sauvegarde

Si une sauvegarde à chaud en ligne est requise, InnoDB est le choix de base.

3. Récupération après crash

Lorsque la quantité de données est relativement importante, comment récupérer rapidement après une panne du système est un problème qui nécessite à considérer, et c'est aussi la raison pour laquelle de nombreuses personnes choisissent InnoDB même s'ils n'ont pas besoin de support de transaction.

Moteur de table de conversion :

1.ALTER TABLE

La méthode la plus simple est l'instruction ALTER TABLE : mysql> ALTER TABLE mytable ENGINE = InnoDB;

Cette syntaxe est applicable à n'importe quel moteur de stockage, mais son exécution prend beaucoup de temps.

Le moteur de stockage de la table de conversion perdra toutes les fonctionnalités liées au moteur d'origine.

2. Exporter et importer

Vous pouvez utiliser l'outil mysqldump pour exporter les données vers un fichier, puis modifier le Instruction CREATE TABLE dans le moteur de stockage de fichiers, veuillez faire attention à modifier le nom de la table.

Dans le même temps, veuillez noter que l'outil mysqldump ajoutera automatiquement l'instruction DROP TABLE avant l'instruction CREATE TABLE par défaut pour faire attention à la perte de données.

3. Créez et interrogez

Pour combiner la première et la deuxième méthodes, créez d'abord une nouvelle table de moteur de stockage, puis utilisez INSTER . .. Syntaxe SELECT pour importer des données

 mysql> CREATE TABLE innodb_table LIKE myisam_table;
       mysql>ALTER TABLE innodb_table ENGINE=InnoDB;
       mysql>INSTER INTO innodb_table SELECT * FROM myisam_table;
Copier après la connexion

Si la quantité de données est importante, elles peuvent être traitées par lots et les opérations de soumission de transaction sont effectuées pour chaque élément de données afin d'éviter l'annulation causée par des transactions volumineuses. Percona Toolkit fournit un outil de changement de schéma pt-online, qui peut être exécuté simplement et facilement pour éviter les erreurs causées par des opérations manuelles.

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!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!