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利用beautifulSoup实现爬虫
Sep 29 Python
一个基于flask的web应用诞生 记录用户账户登录状态(6)
Apr 11 Python
Python实现控制台中的进度条功能代码
Dec 22 Python
python感知机实现代码
Jan 18 Python
Python字典推导式将cookie字符串转化为字典解析
Aug 10 Python
解决Python对齐文本字符串问题
Aug 28 Python
python rsync服务器之间文件夹同步脚本
Aug 29 Python
Python环境Pillow( PIL )图像处理工具使用解析
Sep 12 Python
python pygame实现挡板弹球游戏
Nov 25 Python
opencv python图像梯度实例详解
Feb 04 Python
python实现从尾到头打印单链表操作示例
Feb 22 Python
PyTorch 如何检查模型梯度是否可导
Jun 05 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
利用文件属性结合Session实现在线人数统计
2006/10/09 PHP
PHP连接SQLServer2005 的问题解决方法
2010/07/19 PHP
php无限遍历目录示例
2014/02/21 PHP
php计算给定时间之前的函数用法实例
2015/04/03 PHP
PHP如何实现跨域
2016/05/30 PHP
javascript Base类 包含基本的方法
2009/07/22 Javascript
javascript常用方法、属性集合及NodeList 和 HTMLCollection 的浏览器差异
2010/12/25 Javascript
jQuery的Scrollify插件实现滑动到页面下一节点
2015/07/05 Javascript
小议JavaScript中Generator和Iterator的使用
2015/07/29 Javascript
JavaScript数据绑定实现一个简单的 MVVM 库
2016/04/08 Javascript
js模式化窗口问题![window.dialogArguments]
2016/10/30 Javascript
js实现复选框的全选和取消全选效果
2017/01/03 Javascript
javascript 实现文本使用省略号替代(超出固定高度的情况)
2017/02/21 Javascript
JS简单获取当前日期时间的方法(如:2017-03-29 11:41:10 星期四)
2017/03/29 Javascript
在Vue methods中调用filters里的过滤器实例
2018/08/30 Javascript
使用electron将vue-cli项目打包成exe的方法
2018/09/29 Javascript
jQuery zTree插件快速实现目录树
2019/08/16 jQuery
layui实现tab的添加拒绝重复的方法
2019/09/04 Javascript
JS实现横向轮播图(中级版)
2020/01/18 Javascript
在nuxt中使用路由重定向的实例
2020/11/06 Javascript
python进程类subprocess的一些操作方法例子
2014/11/22 Python
python爬虫获取京东手机图片的图文教程
2017/12/29 Python
对python3 urllib包与http包的使用详解
2018/05/10 Python
tensorflow实现逻辑回归模型
2018/09/08 Python
pytorch实现用CNN和LSTM对文本进行分类方式
2020/01/08 Python
python3中关于excel追加写入格式被覆盖问题(实例代码)
2020/01/10 Python
python爬虫开发之Request模块从安装到详细使用方法与实例全解
2020/03/09 Python
PyQt5 控件字体样式等设置的实现
2020/05/13 Python
Python浮点型(float)运算结果不正确的解决方案
2020/09/22 Python
Python实现疫情地图可视化
2021/02/05 Python
意大利大型购物中心:Oliviero.it
2017/10/19 全球购物
英国领先的电动可调床制造商:Laybrook
2019/12/26 全球购物
法国亚马逊官方网站:Amazon.fr
2020/12/19 全球购物
三个Unix的命令面试题
2015/04/12 面试题
《画》教学反思
2014/04/14 职场文书
企业党员岗位承诺书
2015/04/27 职场文书