GNU/Linux >> Tutoriels Linux >  >> Linux

MySQL - Conversion en données par table pour InnoDB

Aperçu

Le format de données InnoDB est un moteur de stockage de données, qui offre une plus grande fiabilité des données et des améliorations de performances par rapport à l'ancien format MyISAM. Depuis MySQL 5.5, InnoDB est également le moteur de stockage de données par défaut.

Par défaut, InnoDB stocke toutes les données de table dans l'espace de table système (/var/lib/mysql/ibdata1 ), résultant en un gros fichier monolithique. Séparer cela dans une approche "par table" réduira les risques de corruption, tout en augmentant la flexibilité pour le transfert de tables et l'exécution de sauvegardes basées sur des fichiers.

Instructions

Attention ! Assurez-vous que votre base de données a été sauvegardée avant d'apporter des modifications. Surtout lorsque vous apportez des modifications de bas niveau, c'est essentiel.

  1. Sauvegardez votre base de données. C'est suffisamment important pour que je le répète !
  2. Modifier /etc/my.cnf et insérez ce qui suit dans le [mysqld] section :
    innodb_file_per_table=1
  3. Redémarrez MySQL :
    /etc/init.d/mysqld restart
  4. Connectez-vous à MySQL et entrez ce qui suit : 
    SELECT CONCAT('ALTER TABLE ', TABLE_SCHEMA, '.', table_name, ' ENGINE=InnoDB;') FROM INFORMATION_SCHEMA.tables WHERE table_type='BASE TABLE' AND engine = 'InnoDB';
  5. Cela appellera la génération d'une liste de commandes ALTER TABLE, que vous devrez ensuite exécuter pour convertir en stockage par table.
    Remarque : Cela ne libérera pas réellement d'espace disque déjà alloué à /var/lib/mysql/ibdata1

  6. Surveillez le résultat de toutes les commandes ALTER pour vous assurer qu'elles ont été exécutées correctement.

Référence de la documentation MySQL : http://dev.mysql.com/doc/refman/5.5/en/innodb-multiple-tablespaces.html


Linux
  1. RAID pour ceux qui l'évitent

  2. Réparation des bases de données MySQL InnoDB

  3. Pseudo fichiers pour données temporaires ?

  4. Extraire des données d'un tableau HTML

  5. Impossible de sortir les données MySQL dans le fichier

Comment optimiser les tables MySQL

Comment supprimer une table dans MySQL

Types de données MySQL

PHP MySQL Sélectionner les données

Comment insérer des données dans la base de données MySQL à l'aide de PHP dans XAMPP

Annonces textuelles au paiement par clic pour les avocats et les avocats