Путь к MySQL

  • Автор темы Автор темы Krisha
  • Дата начала Дата начала

Krisha

pain in the neck
Путь к MySQL

Подскажите как из скрипта узнать путь к MySQL, а точнее к musqldump ? Имеется в виду путь на диске, чтобы потом можно было его использовать в system(mysqldumb bla bla bla);
 
mysqldumb ? :)
IMHO надежно никак не найдешь если нужно универсальный скрипт написать, можно поиск запускать (долго), можно locate mysqldump, можно SHOW VARIABLES LIKE 'basedir' (не всегда все стоит там).
Если нужно на конкретных серверах куда есть доступ, то можно на них переменную окружения поставить а потом getvar
 
2fixxxer
Может и проще, именно это и был мой первый порыв, но потом передумал, во-первых там слишком много всего, вычищять и разбираться что откуда и как у меня совершенно нету времени, а во вторых для моей задачи такого наворота не нужно. Ну и наконец, иногда полезно писать самому, а не списывать :)

2Yurik
locate mysqldump - если это запустить через system(); то как "ответ" потом получить в переменную. Может у кого есть примерчик ?
 
гым. а вообще дампилку написать вроде как несложно.
show tables;
...

show create table table1;
select * from table1;
...
while (<че у вас там>)
{
$values[] = "('".implode("', '", $result).")";
}
if ((bool)$values)
{
$dump.= "INSERT INTO table1 (`".implode("`, `", array_keys($result))."`) VALUES ".implode(",", $values);
}

P.S.
[m]ob_start[/m]
а лучше
[m]exec[/m]
 
Re: Путь к MySQL

Автор оригинала: Krisha
Подскажите как из скрипта узнать путь к MySQL, а точнее к musqldump ? Имеется в виду путь на диске, чтобы потом можно было его использовать в system(mysqldumb bla bla bla);
which mysqldumb
locate mysqldumb
 
А чем тебя "Select * From table Into File" не устраивает ?
 
2Doomer

Возможно ли при таком запросе получить в файле дампа:

--add-locks
--add-drop-table
--lock-tables

?
 
А зачем надо искать путь к нему? Разве нельзя запустить просто system("mysqldump > file.sql")?
 
grigoriy:
для этого путь к mysqldump должен быть в системной переменной $PATH.
а если бинарник нестандартно лежит, то не найдет.
 
Сверху