2013-09-29 52 views
1

我試圖備份MySQL數據庫使用此代碼:mysqldump的執行,但備份文件是空

$user="admin"; 
$pass=""; 
$dbname="mobiledb"; 
$backupFile = 'c:\\onstor.sql'; 
$command = "mysqldump -u ".$user." -p".$pass." ".$dbname." > ".$backupFile; 
system($command); 

onstor.sql文件被創建,但它的大小爲0字節!

這是什麼問題?

+1

運行命令從命令行,它的工作?任何錯誤? – 2013-09-29 08:33:23

+0

它有相同的錯誤。創建空文件 –

+0

'mysqldump empty'的相當多的匹配,如果你使用網站搜索,希望其中一個將幫助 – 2013-09-29 08:44:21

回答

0

確保您擁有對數據庫運行mysqldump的正確權限。

以root身份運行:

GRANT SELECT, LOCK TABLES ON *.* TO [email protected] 

如果仍然沒有運氣,以幫助確定問題的根本原因,在命令行(不通過腳本)運行的mysqldump命令只是櫃面它是由於到標準輸出重定向期間的某些文件權限問題。

3

嘗試引用mysqldump的絕對:在/ usr/bin中/ mysqldump的

或Windows它可能是這樣的:C:\ Program Files文件\的MySQL \ MySQL服務器5.5 \ BIN \ mysqldump的

+0

這奇怪地爲我工作 – frazras