Python Mysql自动备份脚本

yipeiwu_com5年前Python基础


测试系统环境  Windows 2003   python 2.5.1  mysql 5.0.1

应该只适用于Win,因为调用了CMD。
增量备份,因为自用,数据库不大。
回头有了需求加上自检测,5天前的自动删除。

#!/usr/bin/env python
#encoding=utf-8

#Mysql auto backup
#Author:   vane

import os, sys, datetime

reload(sys)
sys.setdefaultencoding('utf-8')

backup_path = """d:\\mysql_backup_files"""

dbhost = "localhost" 
dbname = "dabatase name" # 数据库名
dbuser = "root"                      # 用户名
dbuserpw = "123456"            # 密码
dbcharset = 'utf8'                  # 输出文件编码,默认UTF8

now = str(datetime.datetime.now())[:10]

backup_command = """mysqldump   -B %s   -h%s   -u%s   -p%s   --default_character-set=%s     --opt>%s\dbbackup_%s_%s.sql\n""" % (dbname, dbhost, dbuser, dbuserpw, dbcharset, backup_path, dbname, now)

a, b = os.popen2('cmd')
a.write(backup_command)
a.close()
b.read()
b.close()
print "Done!"

相关文章

Python设计模式编程中Adapter适配器模式的使用实例

Python设计模式编程中Adapter适配器模式的使用实例

将一个类的接口转换成客户希望的另外一个接口。使得原本由于接口不兼容而不能一起工作的那些类可以一起工作。 应用场景:希望复用一些现存的类,但是接口又与复用环境要求不一致。 模式特点:将一个...

Python中的模块导入和读取键盘输入的方法

导入模块 import 语句 想使用Python源文件,只需在另一个源文件里执行import语句,语法如下: import module1[, module2[,... modul...

python 内置模块详解

一.random模块  随机       random()    随机小数 ...

python strip() 函数和 split() 函数的详解及实例

 python strip() 函数和 split() 函数的详解及实例 一直以来都分不清楚strip和split的功能,实际上strip是删除的意思;而split则是分割的意...

Python中无限元素列表的实现方法

本文实例讲述了Python怎么实现无限元素列表的方法,具体实现可使用Yield来完成。 下面所述的2段实例代码通过Python Yield 生成器实现了简单的无限元素列表。 1.递增无限...