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写的一个squid访问日志分析的小程序
Sep 17 Python
Python实现从订阅源下载图片的方法
Mar 11 Python
Python中文分词工具之结巴分词用法实例总结【经典案例】
Apr 15 Python
分享几道你可能遇到的python面试题
Jul 24 Python
python中的decorator的作用详解
Jul 26 Python
Python解决走迷宫问题算法示例
Jul 27 Python
python3 中文乱码与默认编码格式设定方法
Oct 31 Python
Django 配置多站点多域名的实现步骤
May 17 Python
详解使用PyInstaller将Pygame库编写的小游戏程序打包为exe文件
Aug 23 Python
python调用win32接口进行截图的示例
Nov 11 Python
利用Python实现学生信息管理系统的完整实例
Dec 30 Python
详解python的变量缓存机制
Jan 24 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数据库密码的找回的步骤
2011/01/12 PHP
php中heredoc与nowdoc介绍
2014/12/25 PHP
最新制作ThinkPHP3.2.3完全开发手册
2015/11/23 PHP
php文件上传类的分享
2017/07/06 PHP
PHP删除数组中特定元素的两种方法
2019/02/28 PHP
PHP高并发和大流量解决方案整理
2019/12/24 PHP
JavaScript正则表达式之multiline属性的应用
2015/06/16 Javascript
Jquery promise实现一张一张加载图片
2015/11/13 Javascript
Es6 写的文件import 起来解决方案详解
2016/12/13 Javascript
原生node.js案例--前后台交互
2017/02/20 Javascript
webpack配置之后端渲染详解
2017/10/26 Javascript
利用JS测试目标网站的打开响应速度
2017/12/01 Javascript
Vue前端开发规范整理(推荐)
2018/04/23 Javascript
vue选项卡切换登录方式小案例
2019/09/27 Javascript
JavaScript对象原型链原理解析
2020/01/22 Javascript
vue-cli3项目配置eslint代码规范的完整步骤
2020/09/10 Javascript
基于python的Tkinter实现一个简易计算器
2015/12/31 Python
Python将多个excel文件合并为一个文件
2018/01/03 Python
python2与python3的print及字符串格式化小结
2018/11/30 Python
python使用KNN算法识别手写数字
2019/04/25 Python
Python+opencv+pyaudio实现带声音屏幕录制
2019/12/23 Python
HTML5 canvas基本绘图之图形组合
2016/06/27 HTML / CSS
html5 datalist 选中option选项后的触发事件
2020/03/05 HTML / CSS
英国最大的宠物商店:Pets at Home
2019/04/17 全球购物
中国汽车租赁行业头部企业:一嗨租车
2019/05/16 全球购物
Vision Direct比利时:在线订购隐形眼镜
2019/08/27 全球购物
造型师求职自荐信
2013/09/27 职场文书
夜大毕业生自我评价分享
2013/11/10 职场文书
优秀应届毕业生自荐信
2013/11/16 职场文书
《春雨》教学反思
2014/04/24 职场文书
先进教师个人事迹材料
2014/12/15 职场文书
公司给客户的感谢信
2015/01/23 职场文书
运动会宣传稿100字
2015/07/23 职场文书
导游词之开封禹王台风景区
2019/12/02 职场文书
Apache Calcite 实现方言转换的代码
2021/04/24 Servers
正则表达式拆分url实例代码
2022/02/24 Java/Android