Convertire un MySQL da myISAM ad InnoDB

Gentile Cliente,

tutti i nostri servizi, funzionano sia in mysql in myISAM che InnoDB, tuttavia, l'engine di default del mySQL e' attualmente, myISAM, e' possibile convertire le tabelle myISAM in InnoDB avviando questo semplice scripts dentro il suo servizio hosting

#### Script Start, copiare a partire da <?php ###

<?php

$time = explode(' ',microtime());
$time = $time[1] + $time[0]; //return array
$begintime = $time; //define begin time

//Your database connection items here
 
$host = 'localhost'; //Specify host
$dbuser = ''; // Specify user with alter permissions
$dbpass = ''; //user password
$mydb = ''; //specify schema or db to be modified


//connect to database using variables above
$link = mysql_connect($host,$dbuser,$dbpass);
$db = mysql_select_db($mydb);
  
if (!$link) {
die('Could not connect: ' . mysql_error());

}
echo "Connected Successfully to: $host." . "\n\n";
echo "Using database: $mydb." . "\n\n";
echo "Running script as $dbuser." . "\n\n";


//show tables in database
$sql = 'SHOW TABLES';
$rs = mysql_query($sql);

echo $sql;
echo "\n";

if (!$rs) {
die('SQL Recordset Error: ' . mysql_error());

}
else {
//loop through tables and convert to InnoDB
while($row = mysql_fetch_array($rs))
{
$tbl = $row[0];
$sql = "ALTER TABLE $tbl engine=InnoDB;";
mysql_query($sql);

echo $sql;
echo "\n";
}

echo 'Operation Completed.' . "\n\n";
echo 'Confirm Storage Engine conversion using phpmyadmin ' . "\n" . 'or from mysql: show create table tblname.' . "\n";

}
//close connection
mysql_close($link);

$time = explode(" ", microtime());
$time = $time[1] + $time[0];
$endtime = $time; //define end time
$totaltime = ($endtime - $begintime);
echo "Script Execution Time: $totaltime" . " seconds." . "\n\n";


?>

#### Script End, copiare sino a ?> ###

In alternativa, e' sempre possibile fare la conversione manualmente direttamente dal phpMyAdmin, nel tab "OPERAZIONI".

In caso di problemi, aprire un ticket in area clienti.

Cordiali Saluti

Hai trovato questa risposta utile?

 Stampa Articolo

Leggi anche

(104)Connection reset by peer: mod_fcgid: error reading data from FastCGI server

Se riceve l'errore (104)Connection reset by peer: mod_fcgid: error reading data from FastCGI...

Come posso velocizzare l'apertura delle mie pagine web?

Su tutti i nostri servers e' possibile modificare il file .htaccess per velocizzare il...

404 Error - No Input file specified!

Gentile Cliente,se il suo sito utilizzando il rewrite le dovesse apparire "No Input file...

Come faccio un redirect da un alias al dominio principale?

Salve, per fare un redirect da un alias al dominio principale del vostro sito dovete inserire...

E' possibile passare da un piano hosting ad un'altro?

Si è possibile semplicemente pagando la differenza di prezzo del nuovo piano hosting