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通过select实现异步IO的方法
Jun 04 Python
深入理解Python中range和xrange的区别
Nov 26 Python
Python安装图文教程 Pycharm安装教程
Mar 27 Python
Python获取指定字符前面的所有字符方法
May 02 Python
python实现简单名片管理系统
Nov 30 Python
Python实现的简单线性回归算法实例分析
Dec 26 Python
Django之无名分组和有名分组的实现
Apr 16 Python
python通过paramiko复制远程文件及文件目录到本地
Apr 30 Python
Django用数据库表反向生成models类知识点详解
Mar 25 Python
Python如何将字符串转换为日期
Jul 31 Python
python 进程池pool使用详解
Oct 15 Python
Python实战之OpenCV实现猫脸检测
Jun 26 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循环遍历数组的3种方法list()、each()和while总结
2014/11/19 PHP
浅析ThinkPHP缓存之快速缓存(F方法)和动态缓存(S方法)(日常整理)
2015/10/26 PHP
详谈symfony window下的安装 安装时候出现的问题以及解决方法
2017/09/28 PHP
laravel 判断查询数据库返回值的例子
2019/10/11 PHP
Javascript代码混淆综合解决方案-Javascript在线混淆器
2006/12/18 Javascript
利用JS判断用户是否上网(连接网络)
2013/12/23 Javascript
jQuery中noConflict()用法实例分析
2015/02/08 Javascript
灵活的理解JavaScript中的this指向
2016/02/25 Javascript
BootStrap智能表单demo示例详解
2016/06/13 Javascript
jQuery+CSS实现简单切换菜单示例
2016/07/27 Javascript
JavaScript实现刷新不重记的倒计时
2016/08/10 Javascript
javascript数组常用方法汇总
2016/09/10 Javascript
Jquery实现上下移动和排序代码
2016/10/17 Javascript
JavaScript、C# URL编码、解码总结
2017/01/21 Javascript
深入理解在JS中通过四种设置事件处理程序的方法
2017/03/02 Javascript
JavaScript监听手机物理返回键的两种解决方法
2017/08/14 Javascript
详解VueRouter进阶之导航钩子和路由元信息
2017/09/13 Javascript
webpack+vuex+axios 跨域请求数据的示例代码
2018/03/06 Javascript
解决Angular4项目部署到服务器上刷新404的问题
2018/08/31 Javascript
详解webpack模块加载器兼打包工具
2018/09/11 Javascript
JQuery样式与属性设置方法分析
2019/12/07 jQuery
[54:58]完美世界DOTA2联赛PWL S2 LBZS vs Rebirth 第一场 11.25
2020/11/25 DOTA
Python命名空间详解
2014/08/18 Python
python九九乘法表的实例
2017/09/26 Python
Python3 模块、包调用&路径详解
2017/10/25 Python
python numpy格式化打印的实例
2018/05/14 Python
Selenium鼠标与键盘事件常用操作方法示例
2018/08/13 Python
Python全栈之列表数据类型详解
2019/10/01 Python
PyQt5如何将.ui文件转换为.py文件的实例代码
2020/05/26 Python
高中生学期学习自我评价
2014/02/24 职场文书
cf搞笑广告词
2014/03/14 职场文书
班级旅游计划书
2014/05/03 职场文书
中国梦主题教育活动总结
2014/05/05 职场文书
商场开业庆典策划方案
2014/06/02 职场文书
初二学生评语大全
2014/12/26 职场文书
MySQL数据库 安全管理
2022/05/06 MySQL