phpを使って、.sqlファイルをmysqlデータベースにインポートする方法
phpを使って、.sqlファイルをmysqlデータベースにインポートする方法
どのようにすればいいのでしょうか?この問題を解決するために助けてください。
このコードでは、このエラーが表示されます。
There was an error during import. Please make sure the import file is saved in the same folder as this script and check your values:
MySQL Database Name: test
MySQL User Name: root
MySQL Password: NOTSHOWN
MySQL Host Name: localhost
MySQL Import Filename: dbbackupmember.sql
私はこのコードを使用しています。
<?php
//ENTER THE RELEVANT INFO BELOW
$mysqlDatabaseName ='test';
$mysqlUserName ='root';
$mysqlPassword ='';
$mysqlHostName ='localhost';
$mysqlImportFilename ='dbbackupmember.sql';
//DONT EDIT BELOW THIS LINE
//Export the database and output the status to the page
$command='mysql -h' .$mysqlHostName .' -u' .$mysqlUserName .' -p' .$mysqlPassword .' ' .$mysqlDatabaseName .' < ' .$mysqlImportFilename;
exec($command,$output=array(),$worked);
switch($worked){
case 0:
echo 'Import file <b>' .$mysqlImportFilename .'</b> successfully imported to database <b>' .$mysqlDatabaseName .'</b>';
break;
case 1:
echo 'There was an error during import. Please make sure the import file is saved in the same folder as this script and check your values:<br/><br/><table><tr><td>MySQL Database Name:</td><td><b>' .$mysqlDatabaseName .'</b></td></tr><tr><td>MySQL User Name:</td><td><b>' .$mysqlUserName .'</b></td></tr><tr><td>MySQL Password:</td><td><b>NOTSHOWN</b></td></tr><tr><td>MySQL Host Name:</td><td><b>' .$mysqlHostName .'</b></td></tr><tr><td>MySQL Import Filename:</td><td><b>' .$mysqlImportFilename .'</b></td></tr></table>';
break;
}
?>
59
3
別の方法がありますので、お試しください。
これは私のために働いている、幸運
ラージからの回答は有用ですが、(file($filename)のため) mysql-dumpがメモリに収まっていない場合、**失敗します。
もしあなたが共有ホスティングを利用していて、30MBや12秒のスクリプト実行時間などの制限があり、x00MBのmysqlダンプを復元しなければならない場合、このスクリプトを使用することができます。
スクリプトの実行期限が近づくと、現在のファイル位置をtmpファイルに保存し、ブラウザの自動リロードでこのプロセスを何度も繰り返します。 エラーが発生した場合は、リロードが停止し、エラーが表示されます.
お昼から帰ってきたら、DBは復元されているでしょう。)
**noLimitDumpRestore.php:***。 .php
このエラーは、すでにDBをインポートしている場合や、同じ名前のテーブルがいくつかある場合に表示されます。また、配列エラーが表示されるのは、execのカッコの中に追加しているからですが、修正版はこちらです。