我只有FTP憑據中,我使用這個腳本我想一個表從數據庫導出不用其他使用phpMyAdmin
$r="mysqldump $dbuser $dbpass $dbname wp_posts > table1.sql";
system($r);
,但不幸的是M在table1.sql得到一個空白的結果
我只有FTP憑據中,我使用這個腳本我想一個表從數據庫導出不用其他使用phpMyAdmin
$r="mysqldump $dbuser $dbpass $dbname wp_posts > table1.sql";
system($r);
,但不幸的是M在table1.sql得到一個空白的結果
我終於得到了解決,這裏是我的代碼:
<?php
$username = "abc";
$password = "xyz";
$hostname = "domain.com";
$database = "test_db";
$username =escapeshellcmd($username);
$password =escapeshellcmd($password);
$hostname =escapeshellcmd($hostname);
$database =escapeshellcmd($database);
$backupFile='url'.date("Y-m-d-H-i-s").$database.'.sql.tgz';
$command = "mysqldump -u$username -p$password -h$hostname $database wp_posts > $backupFile";
system($command, $result);
echo $result;
?>
日Thnx的支持,真的很感激。
如果用戶有權限試試這個:
mysqldump -u$dbuser -p$dbpass $dbname wp_posts > table1.sql
指定的參數(這是用戶,哪個是密碼)
您需要的選項開關添加到您的命令,看mysqldump manual,這樣
$r="mysqldump -u $dbuser -p $dbpass $dbname wp_posts > table1.sql";
在上面的腳本中是否需要任何主機變量? – 2012-04-06 11:44:56
@ jassi9911我不相信你需要它,它會默認爲localhost:http://dev.mysql.com/doc/refman/5.1/en/mysqldump.html#option_mysqldump_host但是如果你需要指定它無法通過本地主機連接 – liquorvicar 2012-04-06 11:53:23
我認爲這是
mysqldump -u $dbuser -p $dbpass $dbname wp_posts
Apache用戶需要有寫table1.sql權限和還執行mysqldump命令。如果在共享主機上,這是可疑的。
你使用tgz文件擴展名的原因是什麼?輸出似乎不是一個tgz文件給我,只是一個普通的文本.sql文件。 – liquorvicar 2012-04-09 09:47:03