- Home
- Categorie
- Coding e Sistemistica
- PHP
- Conversione Databease MyISAM in InnoDB
-
Conversione Databease MyISAM in InnoDB
Buonasera a tutti,
dovrei convertire tutto il mio database da MyISAM in innoDB.
Quello che posso aver trovato su internet sono due procedure, in PhpMyAdmin
1 seleziono una tabella del database, vado in operazioni, e cambio il motore di memorizzazione da MyISAM in innoDB
2 scrivo il SQL: ALTER TABLE nometabella ENGINE=InnoDB;Chiedo se questo è corretto o devo fare in maniera diersa?
Bisogna ottimizzare anche database?
Ho provato anche fareuna procedura da Terminale SSh ma mi da un errore di permessi passwordmysqlcheck: Got error: 1045: Access denied for user 'root'@'localhost' (using password: NO) when trying to connect
Ultima cosa la prima e seconda procedura è da fare una tabella alla volta, è possibile fare tutto il database in colp solo?
Attualmente uso Plesk 12.5
Centos 6.7
Server database 5.5.4.4
PhpMyAdmin 4.5.0.2Grazie
-
Ciao bonny3 e benvenuto nel ForumGT!
Se vuoi convertire le tabelle tutte insieme potresti scrivere un piccolo codice php come questo, che ho trovato su stackoverflow.
<?php //connect your database here first //// Actual code starts here $sql ="SELECT TABLE_NAME FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_SCHEMA = 'your_database_name' AND ENGINE = 'MyISAM'";$rs = mysql_query($sql);while($row= mysql_fetch_array($rs)){$tbl =$row[0];$sql ="ALTER TABLE `$tbl` ENGINE=INNODB"; mysql_query($sql);}?>
Mi raccomando backup prima, non si sa mai.
-
@PietroR said:
Ciao bonny3 e benvenuto nel ForumGT!
Se vuoi convertire le tabelle tutte insieme potresti scrivere un piccolo codice php come questo, che ho trovato su stackoverflow.
> <?php //connect your database here first //// Actual code starts here $sql ="SELECT TABLE_NAME FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_SCHEMA = 'your_database_name' AND ENGINE = 'MyISAM'";$rs = mysql_query($sql);while($row= mysql_fetch_array($rs)){$tbl =$row[0];$sql ="ALTER TABLE `$tbl` ENGINE=INNODB"; mysql_query($sql);}?> >``` Mi raccomando backup prima, non si sa mai. Ciao Pietro, Grazie della risposta, ho procato a creare un file .php nel sito e lanciandolo non succede nulla e non cambia il database. Ovviamente nello spazio your_database_name ho messo il nome del mio database. Mi puoi aiutare? Saluti
-
Ciao bonny3
prima della query devi inserire anche i parametri per la connessione al database. Quella è solo la query di modifica
-
@PietroR said:
Ciao bonny3
prima della query devi inserire anche i parametri per la connessione al database. Quella è solo la query di modificaCiao PietroR,
scusami ma non sono molto esperto, che parametri devo inserire di connessione e dove?
GrazieSaluti