0
我在使用subprocess.call使用mysqldump導出數據庫時遇到了一些問題。我正在使用安裝在Windows 7上的Python 3.1。當使用mysqldump嘗試數據庫導出時,是什麼導致subprocess.call輸出空白文件?
from time import gmtime, strftime
import subprocess
DumpDir = "c:/apps/sqlbackup/";
DumpFile = "mysqldump-" + strftime("%Y-%m-%d-%H-%M-%S", gmtime()) + ".sql";
params = [r"mysqldump --user root --password=mypassword --force --flush-privileges --compress --comments mydatabase --result-file=" + DumpDir + DumpFile];
subprocess.call(params, shell=True);
上述代碼導致在DumpDir中創建空白文件。
我試圖讓蟒蛇打印命令,所以我可以通過使用命令提示符測試:
print(subprocess.list2cmdline(params));
如果我粘貼輸出到CMD提示符並執行它,一切工作正常。
任何想法?
我是新來的Python,所以我相信答案很簡單,但我已經嘗試了很多變體來獲得這個工作,我只是無法弄清楚這一點。