python脚本显示执行成功了,但是数据库却没有备份呢。新手求教。如能帮助感激不尽

import pymysql
import time
import datetime
import os
from itertools import chain
dbUser='root'
dbPasswd='Qwer_12345'
dbHost='192.168.18.134'
backupDir = '/root/backup/mysql/'
backupDate = time.strftime("%Y%m%d")
db = pymysql.connect('192.168.18.134','root','Qwer_12345','mysql')

cursor = db.cursor()
cursor.execute("show databases")
Alldatabasename = cursor.fetchall()
Alldatabasename = list(chain.from_iterable(Alldatabasename))
#Alldatabasename = Alldatabasename.split(",")

print(Alldatabasename)

db.close()
i = input("请输入要备份的数据库名称:")
if i in Alldatabasename:

cmd = 'mysqldump -u'+ dbUser + ' -p'+ dbPasswd +' '+ i + '>' + backupDir + backupDate + i + '.sql'

os.system(cmd)

print ('The database backup success! %s' %time.strftime('%Y-%m-%d %H:%M:%S'))

else:
print("%s 数据库不存在,请重新输入"% i)

1个回答

你把cmd的值打印出来,然后再将这个值在命令行或者是终端上执行以下看能不能成功。
你导出的命令好像有问题
mysqldump -h主机名 -P端口 -u用户名 -p密码 --database 数据库名 > 文件名.sql
如果你导出的数据库和你程序是在同一服务器可以不要-h 端口是默认端口可以不要-P

qq_36720114
德玛洗牙 你在装了mysql客户端的windows上只要能访问加上主机名还是可以
6 个月之前 回复
lnr9483
lnr9483 能用啦,我犯2了 ,没把脚本放到数据库本机上运行,再windows上运行了半天
6 个月之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问