使用mysqldump备份0kb

时间:2018-08-11 10:58:43

标签: python mysql

  

有人herehere问了同样的问题,但这些都帮不了我。

在我的python实用程序中,我试图使用mysqldump进行MySQL数据库备份。它运行成功,但是我的备份文件夹中出现了0kb文件。

这是我的代码;

DB_HOST = '192.168.1.1'
DB_USER = 'root'
DB_USER_PASSWORD = '_root_user_password_'
DB_NAME = 'db_name'
BACKUP_PATH = '/backup/dbbackup/'

DATETIME = time.strftime('%m%d%Y-%H%M%S')
TODAYBACKUPPATH = BACKUP_PATH + DATETIME

dumpcmd = "mysqldump -h " + DB_HOST + " -u " + DB_USER + " -p" + DB_USER_PASSWORD + " " + DB_NAME + " > " + TODAYBACKUPPATH + "/" + DB_NAME + ".sql"

os.system(dumpcmd)

有人可以引导我指出我在这里缺少什么吗?

1 个答案:

答案 0 :(得分:1)

您可以在python控制台中分析代码(只需在shell命令行上执行python),然后发现一些问题:

首先,代码顶部缺少导入:

import time, os

第二,未设置db变量,我想应该是DB_NAME。 python中的一个好习惯是使用%格式连接字符串:

dumpcmd = "mysqldump -h %s -u %s -p%s %s > %s/%s.sql" % (DB_HOST,DB_USER,DB_USER_PASSWORD,DB_NAME,TODAYBACKUPPATH,DB_NAME,)

最后,作为提示,添加print dumpcmd并手动测试命令。

请记住,应首先创建路径,或将/替换为-作为文件名。