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

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

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

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...

Wordpress - Warning: is_dir(): open_basedir restriction in effect

Nel caso in cui il sito wordpress dia questo erroreWarning: is_dir(): open_basedir restriction in...

404 xmlrpc.php jetpack

  Gentile Cliente, blocchiamo, per motivi di sicurezza, il file xmlrpc.php in quanto utilizzato...

Che porte devo utilizzare per il mio client?

Le porte da utilizzare per i client mail sono le seguentiSMTP AUTH: 25 o 587 SMTP SSL: 465 SMTP...