Резервное копирование PHP MySQL на Linux с помощью Exec
Я пытаюсь использовать функцию exec() для выполнения файла mysqldump и сохранения файла резервной копии в определенной папке, но он не отображается в этой папке. Любые идеи о том, что не так с кодом?
exec('/usr/bin/mysqldump -h hostname -u root -psomepassword dbname > somepath/file.sql');
Спасибо!
1 ответ
Если у вас есть root-доступ на сервере, попробуйте это:
sudo su www-data // Ubuntu, for other systems find out the user on which apache is running
/usr/bin/mysqldump -h hostname -u root -psomepassword dbname > somepath/file.sql
Если это работает, проблема в php. Если нет, вы знаете проблему из-за сообщения об ошибке. Но, как уже указывалось, crontab является лучшим решением для этого.