このような他の質問がありますが、私が見た回答はありませんでしたので、私は新鮮な質問をしています。mysqldumpはPHPシステム経由で空白ファイルを生成します。
私は、このコマンドでsystem()
経由mysqldump
を使用しようとしている:今
$backup_path = $_SERVER['DOCUMENT_ROOT'] . '/website/acp/backup/';
$backup_name = $backup_path . $dbname . '.backup.' . date('l.dS.F.Y.g.iA') . '.sql';
$command = 'mysqldump ' . $dbname . ' -u ' . $dbuser . ' -p' . $dbpasswd . ' > ' . $backup_name;
system($command, $returned);
print_r($returned);
$returned
出力127
とゼロKBのサイズは、バックアップフォルダにあると空のファイルを、私は$command
をエコーするときとターミナルにそれを入力すると、完全に動作し、データベースのフルバックアップが生成されます。これは私が理解していない部分ですが、なぜそれがsystem()
コールでうまくいかないのですが、ターミナルでうまく動作しますか?あなたは-p
でそれを指定した場合でも、あなたがパスワードを入力する必要がありますmysqldumpを実行しているとき、これは役に立つはずですので
を確認してい指定されたユーザーアカウントに必要な「ファイル」権限を持っていますか? –