ターミナルからdumpが使えない場合の引っ越し手順覚え書き。
今回の移転作業は、移転もとの DBが業者の専用の物であり、他のクライアントと共用であると推測されるため、このような手順をとる。
MySQLDump 2.0というクラスをダウンロードし、phpファイルから実行するとdumpファイルを出力するというもの。
でも、なぜかこれができなかったので、手動で情報を取得する。
まずテーブルのリストを取得。
$dbname = 'mysql_dbname';
if (!mysql_connect('mysql_host', 'mysql_user', 'mysql_password')) {
echo 'Could not connect to mysql';
exit;
}
$sql = "SHOW TABLES FROM $dbname";
$result = mysql_query($sql);
if (!$result) {
echo "DB Error, could not list tables\n";
echo 'MySQL Error: ' . mysql_error();
exit;
}
while ($row = mysql_fetch_row($result)) {
echo "Table: {$row[0]}\n";
}
mysql_free_result($result);
幸いにも2個しかテーブルが無いようだ。
テーブルの構造を取得
$result = mysql_query("SHOW COLUMNS FROM sometable");
if (!$result) {
echo 'Could not run query: ' . mysql_error();
exit;
}
if (mysql_num_rows($result) > 0) {
while ($row = mysql_fetch_assoc($result)) {
print_r($row);
}
}
後はselect分でcsvを吐き出して、それを取り込むか。続きは明日。
コメントする