我有PHP exec
一個非常簡單的腳本調用MySQL的exe文件,調用mysql
命令:使用PHP的exec不起作用
$dbhost = 'localhost';
$dbuser = 'root';
$dbpass = 'mypass';
$db = 'job';
$file ='job_create.sql';
$mySQLDir='"C:\Program Files\MySQL\MySQL Server 5.1\bin\mysql"';
if ($dbpass != '') {
$cmd = $mySQLDir.' -h '.$dbhost.' --user='.$dbuser.' --password='.$dbpass.' < "'.dirname(__FILE__).'\\'.$file.'"';
} else {
$cmd = $mySQLDir.' -h '.$dbhost.' --user='.$dbuser.' < "'.dirname(__FILE__).'\\'.$file.'"';
}
// echo $cmd;
exec($cmd,$out,$retval);
我希望的是,上述腳本調用mysql
命令,通過在用戶認證信息並在運行中運行job_create.sql
。
唯一的問題是它不起作用,因爲job_create.sq
l運行不正常。 。我試圖從直接使用下面的腳本命令行調用mysql
命令,
bin\mysql.exe -h localhost --user=root --password=mypass < "job_create.sql"
和它的作品。
任何想法如何解決這個問題?
編輯:我從PHP命令行調用這個腳本。即PHP.exe installdb.php
你爲什麼不使用mysql-綁定,而不是調用在外殼的? – troelskn 2009-05-02 20:34:16