Я использую функцию php exec, чтобы попытаться сделать резервную копию базы данных, но, похоже, она не работает.Я пробовал разные варианты:
$dbuser = "root";
$dbpwd = "somepass";
$dbhost = "localhost";
$db = "somedb";
$dir = "/var/www/backup/";
$filename = $db.".sql";
exec('/usr/bin/mysqldump -u '.$dbuser.' -p'.$dbpwd.' -h '.$dbhost.' '.$db.' > '.$dir.$filename);
Это работает через SSH, вошедший в систему как root.Кажется, что -p не работает с пробелом, поэтому, когда я его забрал, он работал через SSH.Когда я запускаю whoami из exec в PHP, я получаю apache.Это было бы проблемой?Если так, то как бы это исправить?
Это окно linux.Я не получаю никаких ошибок в PHP-скрипте (для уверенности установите display_errors наверху), и команда exec ничего не дает.
Любая помощь приветствуется.