Резервное копирование 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 является лучшим решением для этого.

Другие вопросы по тегам