データベースの内容をバックアップするボタンを作ろうと、こんなスクリプトを書いた。
$id = "root";
$pwd = "password";
$db = "myDB";
passthru('mysqldump '.$db.' -u '.$id.' -p'.$pwd.' >./tmp/test.sql ');
・・・が、うまく行かない。空のsqlが書き出される。
色々調べた結果、stackoverflowで同じような質問があったので解決
xamppを使用の場合、
passthru('c:\xampp\mysql\bin\mysqldump '.$db.' -u '.$id.' -p'.$pwd.' >./tmp/test.sql ');
とすればよい。ローカルのインストールしたパスを参照させないといけない。
同様に、バックアップから復帰させるときは
passthru('c:\xampp\mysql\bin\mysql '.$db.' -u"'.$id.'" -p"'.$pwd.'" <./tmp/test.sql ');
とする。
0 件のコメント:
コメントを投稿