python3 备份mysql小程序

为了保证数据安全,一般都会定期备份数据库,备份数据库也有自己的命令可以执行,下面就是一个每天备份mysql数据库的一个小程序。

mysql备份的命令如下:

mysqldump -uroot -p123456 -A > backup.sql
def bak_db(self):
    #mysqldump -u%s -p%s -P%s -h%s -A > xx.sql
    #20180101.sql
    filename = str(datetime.date.today()) + '.sql'#备份今天的数据
    abs_file = os.path.join(self.path,filename)#变成绝对路径
    command = '''
    mysqldump -u{username} -p{password} -P{port} -h{ip} -A > {filename}
    '''.format(username=self.username,
               password=self.password,
               port = self.port,
               filename = abs_file,
               ip = self.ip)
    os.system(command) #这句命令在windows 和linux都可以执行
    print('done!数据库备份完成!')

主要是把命令封装在bak_db这个方法里,然后把只要将类 BackDb实例化(如下所示)就可以了,因为bak_db() 已经在构造函数里调过了,没写的话就调用db1.bak_db() 。

db1 = BackDb('localhost','root','123456')

还可以结合jenkins自动备份,有关jenkins的后期再更新。