Python实现定时备份mysql数据库并把备份数据库邮件发送


Posted in Python onMarch 08, 2018

一、先来看备份mysql数据库的命令

mysqldump -u root --password=root --database abcDataBase > c:/abc_backup.sql

二、写Python程序

       BackupsDB.py

#!/usr/bin/python 
# -*- coding: UTF-8 -*- 
 ''''' 
zhouzhongqing

备份数据库  

''' 
import os 
import time 
import sched 
import smtplib 
from email.mime.text import MIMEText 
from email.header import Header 
from email.mime.multipart import MIMEMultipart 
from email.mime.application import MIMEApplication 
# 第一个参数确定任务的时间,返回从某个特定的时间到现在经历的秒数 
# 第二个参数以某种人为的方式衡量时间 
schedule = sched.scheduler(time.time, time.sleep); 
def backupsDB(): 
        # 如果是linux改下路径就可以了 
  cmdString = 'D:/php/phpStudy/MySQL/bin/mysqldump -u root --password=root --database abcDataBase > c:/abc_backup.sql'; 
  os.system(cmdString); 
def sendMail(): 
  _user = "mall@xxxx.com"#发送者的邮箱 
  _pwd = "xxxx"#发送者的密码 
  _to = "1030907690@qq.com"#接收者的邮箱 
  # 如名字所示Multipart就是分多个部分 
  msg = MIMEMultipart() 
  msg["Subject"] = "商城数据库备份" 
  msg["From"] = _user 
  msg["To"] = _to 
  # ---这是文字部分--- 
  part = MIMEText("商城数据库备份") 
  msg.attach(part) 
  # ---这是附件部分--- 
  # 类型附件 
  part = MIMEApplication(open('c:/abc_backup.sql', 'rb').read()) 
  part.add_header('Content-Disposition', 'attachment', filename="abc_backup.sql") 
  msg.attach(part) 
  s = smtplib.SMTP("smtp.exmail.qq.com", timeout=30) # 连接smtp邮件服务器,端口默认是25 
  s.login(_user, _pwd) # 登陆服务器 
  s.sendmail(_user, _to, msg.as_string()) # 发送邮件 
  s.close(); 
def perform_command(cmd, inc): 
  # 安排inc秒后再次运行自己,即周期运行 
  schedule.enter(inc, 0, perform_command, (cmd, inc)); 
  os.system(cmd); 
  backupsDB(); 
  sendMail(); 
def timming_exe(cmd, inc=60): 
  # enter用来安排某事件的发生时间,从现在起第n秒开始启动 
  schedule.enter(inc, 0, perform_command, (cmd, inc)) 
  # 持续运行,直到计划时间队列变成空为止 
  schedule.run() 
if __name__ == '__main__': 
  print("show time after 10 seconds:"); 
  timming_exe("echo %time%", 56400);#每间隔56400秒备份发送邮件 
  #46400 基本上是半天

然后命令

py BackupsDB.py

运行程序就可以了。

总结

以上所述是小编给大家介绍的Python实现定时备份mysql数据库并把备份数据库邮件发送,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Python 相关文章推荐
python在windows下实现备份程序实例
Jul 04 Python
Python写的Socks5协议代理服务器
Aug 06 Python
Python中DJANGO简单测试实例
May 11 Python
Python随机数random模块使用指南
Sep 09 Python
Python使用arrow库优雅地处理时间数据详解
Oct 10 Python
Python通过future处理并发问题
Oct 17 Python
解决Python plt.savefig 保存图片时一片空白的问题
Jan 10 Python
在PYQT5中QscrollArea(滚动条)的使用方法
Jun 14 Python
详解使用python绘制混淆矩阵(confusion_matrix)
Jul 14 Python
详解numpy矩阵的创建与数据类型
Oct 18 Python
Python 时间戳之获取整点凌晨时间戳的操作方法
Jan 28 Python
python绘图pyecharts+pandas的使用详解
Dec 13 Python
python实现12306抢票及自动邮件发送提醒付款功能
Mar 08 #Python
TensorFlow模型保存/载入的两种方法
Mar 08 #Python
python2.7 json 转换日期的处理的示例
Mar 07 #Python
教你用Python创建微信聊天机器人
Mar 31 #Python
为什么入门大数据选择Python而不是Java?
Mar 07 #Python
详解Python中如何写控制台进度条的整理
Mar 07 #Python
python爬虫爬取网页表格数据
Mar 07 #Python
You might like
php array_merge下进行数组合并的代码
2008/07/22 PHP
PHP实现笛卡尔积算法的实例讲解
2019/12/22 PHP
js每次Title显示不同的名言
2008/09/25 Javascript
JavaScript 权威指南(第四版) 读书笔记
2009/08/11 Javascript
javascript多种数据类型表格排序代码分析
2010/09/11 Javascript
JS中的substring和substr函数的区别说明
2013/05/07 Javascript
javascript阻止scroll事件多次执行的思路及实现
2013/11/08 Javascript
JavaScript数值数组排序示例分享
2014/05/27 Javascript
简介JavaScript中toUpperCase()方法的使用
2015/06/06 Javascript
基于BootStrap Metronic开发框架经验小结【五】Bootstrap File Input文件上传插件的用法详解
2016/05/12 Javascript
妙用Bootstrap的 popover插件实现校验表单提示功能
2016/08/29 Javascript
JS输出空格的简单实现方法
2016/09/08 Javascript
jQuery命名空间与闭包用法示例
2017/01/12 Javascript
微信小程序实战之仿android fragment可滑动底部导航栏(4)
2020/04/16 Javascript
用node开发并发布一个cli工具的方法步骤
2019/01/03 Javascript
JS出现404错误原理及解决方案
2020/07/01 Javascript
[01:01:35]Optic vs paiN 2018国际邀请赛小组赛BO2 第二场 8.19
2018/08/21 DOTA
python中的reduce内建函数使用方法指南
2014/08/31 Python
Python中一些自然语言工具的使用的入门教程
2015/04/13 Python
Python中DJANGO简单测试实例
2015/05/11 Python
Python将阿拉伯数字转换为罗马数字的方法
2015/07/10 Python
如何使用python爬取csdn博客访问量
2016/02/14 Python
python素数筛选法浅析
2018/03/19 Python
Python框架Flask的基本数据库操作方法分析
2018/07/13 Python
Scrapy使用的基本流程与实例讲解
2018/10/21 Python
使用Python和Prometheus跟踪天气的使用方法
2019/05/06 Python
python科学计算之numpy——ufunc函数用法
2019/11/25 Python
Python3列表List入门知识附实例
2020/02/09 Python
python虚拟环境模块venv使用及示例
2020/03/04 Python
win10从零安装配置pytorch全过程图文详解
2020/05/08 Python
Waterford英国官方网站:世界上最受欢迎的优质水晶品牌
2019/08/17 全球购物
西安当代医院管理研究院笔试题
2015/12/11 面试题
2015年教师节演讲稿范文
2015/03/19 职场文书
2015年信息中心工作总结
2015/05/25 职场文书
小程序后台PHP版本部署运行 LNMP+WNMP
2021/04/01 Servers
Django程序的优化技巧
2021/04/29 Python