Forum Webscript.Ru
Программирование => PHP => Тема начата: SlavaK от 17 Сентября 2003, 14:48:59
-
Хочу периодически производить автоматическое резервное сохранение определенной таблицы из базы данных MySQL в файл с записью на сервер провайдера (впоследствии с отправкой этого файла вложенным письмом в свой ящик). PHP должен передавать MySQL запрос :
BACKUP TABLE tablename TO \'/tmp\';
Провайдер говорит, что сделать резервное сохранение к нему в папку \'/tmp\' я смогу, но потом получить доступ к этим файлам у меня не получится, так как файлы записываются в папку не от моего имени.
Есть ли какое-то альтернативное решение? Неохота все "select\'ом" выгребать.
-
а зачем ты в папку тмп сохраняешь?
сохраняй в папку к которой у тебя есть доступ
-
"выгребать" надо не селектом, а утилитой mysqldump
она для этого предназначена
-
"выгребать" надо не селектом, а утилитой mysqldump
При тестировании локально, у меня из PHPMyAdmin эта утилита не запускается.
Вообще-то, провайдер говорит, что я не могу у них на сервере запускать утилиты MySQL.
:(
А как эту утилиту вообще использовать? Что с этим дампом делать? Можно его себе в виде текста на ящик отправить?
-
а зачем ты в папку тмп сохраняешь?
Как я понял, запись файла идет не от моего имени. Поэтому, записанные файлы я прочитать не смогу.
:(
-
"у меня из PHPMyAdmin " ее запускать и не надо.
ее надо запускать из каталога, где стоит mysql/bin
-
без доступа к шеллу в полном смысле бэкап ты не сделаешь.
можно генерить дамп так, как это реализовано phpMyAdmin
-
там что-то было про SELECT ... INTO FILE ...
смотри доки, я на днях читал про LOAD DATA .. INFILE ...
и там про это было.