GNU/Linux >> Linux Esercitazione >  >> Linux

MySQL:conversione in dati per tabella per InnoDB

Panoramica

Il formato dati InnoDB è un motore di archiviazione dati, che fornisce una maggiore affidabilità dei dati e miglioramenti delle prestazioni rispetto al vecchio formato MyISAM. A partire da MySQL 5.5, InnoDB è ora anche il motore di archiviazione dati predefinito.

Per impostazione predefinita, InnoDB archivia tutti i dati della tabella nello spazio tabella di sistema (/var/lib/mysql/ibdata1 ), risultando in un unico file grande e monolitico. Separare questo in un approccio "per tabella" ridurrà le possibilità di danneggiamento, oltre ad aumentare la flessibilità per il trasferimento di tabelle e l'esecuzione di backup basati su file.

Istruzioni

Attenzione! Assicurati di aver eseguito il backup del database prima di apportare modifiche. Soprattutto se stai apportando modifiche di basso livello, questo è fondamentale.

  1. Esegui il backup del database. Questo è abbastanza importante da averlo ripetuto di nuovo!
  2. Modifica /etc/my.cnf e inserisci quanto segue in [mysqld] sezione:
    innodb_file_per_table=1
  3. Riavvia MySQL:
    /etc/init.d/mysqld restart
  4. Accedi a MySQL ed emetti quanto segue: 
    SELECT CONCAT('ALTER TABLE ', TABLE_SCHEMA, '.', table_name, ' ENGINE=InnoDB;') FROM INFORMATION_SCHEMA.tables WHERE table_type='BASE TABLE' AND engine = 'InnoDB';
  5. In questo modo verrà generato un elenco di comandi ALTER TABLE, che dovrai quindi eseguire per convertire in spazio di archiviazione Per Table.
    Nota: Questo in realtà non libererà spazio su disco già allocato a /var/lib/mysql/ibdata1

  6. Monitora l'esito di tutti i comandi ALTER per assicurarti che siano stati eseguiti correttamente.

Riferimento alla documentazione MySQL: http://dev.mysql.com/doc/refman/5.5/en/innodb-multiple-tablespaces.html


Linux
  1. RAID per chi lo evita

  2. Riparazione di database MySQL InnoDB

  3. Pseudo file per dati temporanei?

  4. Commit dati in un contenitore mysql

  5. Impossibile inviare i dati MySQL al file

Come ottimizzare le tabelle MySQL

Come eliminare una tabella in MySQL

Tipi di dati MySQL

PHP MySQL Seleziona dati

Come inserire dati nel database MySQL utilizzando PHP in XAMPP

Annunci di testo pay per click per avvocati e avvocati