2015-11-06 47 views
1

我在我的godaddy服務器中設置了一個用於備份數據庫的cron。對於測試目的,我在每分鐘運行一次cron。該命令是:cron中的數據庫備份正在創建一個零字節的文件

mysqldump tuniv_results > /home/username/public_html/DB-VVS/tuniv_results.sql 

在我的DB-VVS文件夾一個文件,tuniv_results.sql,創造卻是零字節。你能不能讓我知道這個問題,爲什麼它沒有正確創建? 在此先感謝。

------------ UPDATE -------------------

$user="****"; 
$password="****"; 
$database="*****"; 

$dumpCommand='/usr/bin/mysqldump'; 
$dumpCommand.=" -e -f -h <ipaddress> -u$user -p$password"; 
$dumpCommand.=" $database"; 
$dumpCommand.=" > bekap.sql"; 

$results=$dumpCommand; 
exec($dumpCommand); 
echo "result: ".$results; 

我創建的根文件文件夾,然後將該文件的絕對路徑作爲/home/username/cronfile.php放在Command文本字段中。但在根文件中沒有像bekap.sql這樣的文件。請讓我知道可能是什麼問題。

回答

1

試試這個:

$user="*********"; 
$password="*****"; 
$database="*********"; 

$dumpCommand='/usr/bin/mysqldump'; 
$dumpCommand.=" -e -f -h host.name.com -u$user -p$password"; 
$dumpCommand.=" $database"; 
$dumpCommand.=" > bekap.sql"; 

$results=$dumpCommand; 
exec($dumpCommand); 
echo "result: ".$results; 

另一種解決方案:

我認爲這會幫助到你。

打開終端,輸入:sudo的 的tcsh

微微/ etc/crontab中 或 納米/ etc/crontab中

並添加根據您的情況以下行之一。此安排每天凌晨1點進行備份。與鏈接的路徑中

遠程主機備份到mysqldump的:

0 1 * * *的mysqldump -h mysql.host.com -Uusername -Ppassword --opt數據庫> /path/to/directory/filename.sql

遠程主機備份:

0 1 * * *的/ usr /本地/ MySQL的/斌/ mysqldump的-h mysql.host.com -Uusername -Ppassword --opt數據庫> /路徑/到/目錄/文件名.sql

本地主機mysql備份:

0 1 * * *的/ usr /本地/ MySQL的/斌/ mysqldump的-uroot -ppassword --opt數據庫> /path/to/directory/filename.sql

(還有就是-p之間沒有空格和密碼或-u和用戶名 - 用正確的數據庫用戶名替換root。)

+0

如何使用它?我必須創建一個文件並在cron中運行該文件嗎? – Srim

+0

是的你必須在cron中設置這個文件 –

+0

在cron中設置,如何添加那個文件?我應該把文件的絕對路徑放在命令文本字段中嗎? – Srim

相關問題