PHP로 MyISAM 에서 InnoDB 로 변환하기
아래와 같은 PHP 코드로 해결할수 있다.
맨위 4개의 변수에 알맞는 정보만 입력하면 자동으로 변환해준다.
<?php
$MYSQL_HOST = "localhost"
$MYSQL_ID = "";
$MYSQL_PW = "";
$MYSQL_DBNAME = "";
@$DB = mysqli_connect($MYSQL_HOST, $MYSQL_ID, $MYSQL_PW);
mysqli_select_db($DB, 'information_schema');
$con_result = mysqli_query($DB, "SELECT * FROM `TABLES` WHERE `TABLE_SCHEMA` LIKE " . $MYSQL_DBNAME);
while ($row = mysqli_fetch_array($con_result)) {
$start_time = array_sum(explode(' ', microtime()));
mysqli_select_db($DB, $MYSQL_DBNAME);
mysqli_query($DB, "alter table ".$row[TABLE_NAME]." engine='InnoDB';");
$end_time = array_sum(explode(' ', microtime()));
echo "convert ok! (time:".round(($end_time-$start_time),5).")
";
}
echo "작업 완료";
/* 접속 끊기 */
mysqli_close($DB);
?>