Путь к MySQL

Krisha

pain in the neck
Путь к MySQL

Подскажите как из скрипта узнать путь к MySQL, а точнее к musqldump ? Имеется в виду путь на диске, чтобы потом можно было его использовать в system(mysqldumb bla bla bla);
 

Yurik

/dev/null
mysqldumb ? :)
IMHO надежно никак не найдешь если нужно универсальный скрипт написать, можно поиск запускать (долго), можно locate mysqldump, можно SHOW VARIABLES LIKE 'basedir' (не всегда все стоит там).
Если нужно на конкретных серверах куда есть доступ, то можно на них переменную окружения поставить а потом getvar
 

fixxxer

К.О.
Партнер клуба
...а еще проще выдрать код дампилки из phpmyadmin..
 

Krisha

pain in the neck
2fixxxer
Может и проще, именно это и был мой первый порыв, но потом передумал, во-первых там слишком много всего, вычищять и разбираться что откуда и как у меня совершенно нету времени, а во вторых для моей задачи такого наворота не нужно. Ну и наконец, иногда полезно писать самому, а не списывать :)

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

ForJest

- свежая кровь
гым. а вообще дампилку написать вроде как несложно.
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]
 

BioHazard

Новичок
Re: Путь к MySQL

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

Doomer

Guest
А чем тебя "Select * From table Into File" не устраивает ?
 

Krisha

pain in the neck
2Doomer

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

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

?
 

gRigoriy

Новичок
А зачем надо искать путь к нему? Разве нельзя запустить просто system("mysqldump > file.sql")?
 

tony2001

TeaM PHPClub
grigoriy:
для этого путь к mysqldump должен быть в системной переменной $PATH.
а если бинарник нестандартно лежит, то не найдет.
 
Сверху