mysqldump с помощью proc_open ??

sssr

Новичок
mysqldump с помощью proc_open ??

Требуется снять дамп с БД .
и есть у меня код
PHP:
function _Dump($inStr,$passw)
{
$descriptorspec = array(
0 => array("pipe", "r"),
1 => array("pipe", "w"),
2 => array("pipe", "w"));

$fp = proc_open($inStr, $descriptorspec, $pipes);
	if (is_resource($fp)) {
		
	$wrr = fwrite($pipes[0],$passw);
		
	print_r($wrr); // дает 0 байт на запись
		
	fclose($pipes[0]);
		
	if ($wrr===FALSE) echo 'ERROR WRITE';
	$s ="";

	if (!feof($pipes[1])) {
		$s = fgets($pipes[1], 133);
	}
	
     fclose($pipes[1]);
	
                 $errorlevel = proc_close($fp);
	return $s;
		
	} else {
		return false;
	}
}

$passw = 'passw';
$str = 'mysqldump --host=10.0.140.15  -u sqllogin -p passw db > dump_db.sql';
$result = _Dump($str,$passw);
var_dump($result);
Результат нулевой .
$str в шеле срабатывает с правильным паролем , но почему требуется вводить его снова - мне непонятно .
Это так и должно быть ??

И второй вопрос : почему при попытке записать в stdin пароль
возвращает 0 байт ?
 
Сверху