lnr9483 2019-07-25 16:18 采纳率: 0%
浏览 389

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条回答

  • 德玛洗牙 2019-07-25 17:43
    关注

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

    评论

报告相同问题?

悬赏问题

  • ¥15 oracle集群安装出bug
  • ¥15 关于#python#的问题:自动化测试
  • ¥15 教务系统账号被盗号如何追溯设备
  • ¥20 delta降尺度方法,未来数据怎么降尺度
  • ¥15 c# 使用NPOI快速将datatable数据导入excel中指定sheet,要求快速高效
  • ¥15 再不同版本的系统上,TCP传输速度不一致
  • ¥15 高德地图点聚合中Marker的位置无法实时更新
  • ¥15 DIFY API Endpoint 问题。
  • ¥20 sub地址DHCP问题
  • ¥15 delta降尺度计算的一些细节,有偿