Python 代码:
#coding=utf-8 #!/usr/bin/python import os import time import zipfile db_host = 'localhost' db_user = 'root' db_pass = '#$$123456' db_name = 'ty4564ky' db_charset = 'utf8' file_name = db_name + '_' + time.strftime('%Y%m%d%H%M') + '.sql' file_path = '/var/www/html/crontab_python/db/' + file_name zip_src = file_path zip_dest = zip_src + '.zip' back_cmd = '/usr/local/mysql/bin/mysqldump' def back_db(): os.system(back_cmd + " -h'%s' -u'%s' -p'%s' '%s' --default_character-set=%s > %s" % (db_host, db_user, db_pass, db_name, db_charset, file_path)) def zip_files(): f = zipfile.ZipFile(zip_dest, 'w', zipfile.ZIP_DEFLATED) f.write(zip_src, file_name) f.close() if __name__ == '__main__': print('begin to dump mysql database...') back_db() print('begin zip files...') zip_files() print('done, Python is great!')
设定定时任务(每天晚上23点整开始备份)
0 23 * * * python /var/www/html/crontab_python/back_db.py >/dev/null 2>&1
延伸阅读: