mysqldump не работает вообще :( - PullRequest
0 голосов
/ 21 января 2012

У меня есть этот код:

function export() 
{
    $exp = system("mysqldump -uguku -pjustbe repadmin > back-up.sql");
    if($exp) {echo 'ok';}
    else { echo 'err';}
}

Но это не работает, все, что он делает, это создает файл "back-up.sql", но он пустой. И я получаю сообщение "err".

Ответы [ 2 ]

1 голос
/ 24 января 2012

Здесь у вас есть команда, которая не работает должным образом.Лучше всего захватить stderr (куда идут сообщения об ошибках) и посмотреть, что выводится.Следует также отметить, что переменные окружения будут другими - например, PATH (на который ссылается @Joshua_Martell выше).

Используйте эту команду, чтобы перехватить stderr и посмотреть, какие сообщения об ошибках вызываются:1004 *

Здесь также используется полный путь к mysqldump (используйте правильный путь).Вам также, вероятно, следует добавить путь к back-up.sql и, в этом случае, к mysqldump.err - не думайте, что PHP будет работать в нужной вам директории, так как может измениться.

1 голос
/ 21 января 2012

Попробуйте использовать полный путь к mysqldump ...

$exp = system("/full/path/mysqldump -uroot -p repadmin > back-up.sql");

which mysqldump скажет вам, каким должен быть путь.

...