原理是上传文件到百度云,大家也可以来个头脑风暴,比如利用闲置vps搭建离线下载到百度云?
【操作环境】
linux + python2 + mysql
【使用步骤】
1.安装百度网盘Python客户端
pip install bypy
2.授权bypy访问百度云
bypy info
运行上面的命令,把类似openapi.baidu.com/oauth/2.0/authorize?scope=basic+netdisk&redirect_uri=oob&response_type=code&client_id=XXXXX
的链接在浏览器打开
3.复制授权码到xshell按回车键
4.修改python备份模板代码(数据库名,用户名,密码,备份文件夹位置)
5.利用xftp上传python备份代码到服务器
6.利用定时任务(crontab)定期执行定时操作
python /home/backup/dbback.py
【python备份代码】
import os
import datetime
dbs = ['数据库名']
def dump(dbname):
cmd = 'mysqldump -u用户名 -p数据库密码 %s| gzip > /home/backup/%s_' % (dbname, dbname)
cmd += '`date +%Y%m%d_%H%M%S`.sql.gz'
return os.system(cmd) == 0
def upload(dbname):
cmd = 'bypy upload /home/backup/%s_' % dbname
cmd += '`date +%Y%m%d_%H%M%S`.sql.gz'
return os.system(cmd) == 0
for db in dbs:
if not dump(db) or not upload(db):
print '%s faild to backup database=%s' % (datetime.datetime.now(), db)
else:
print '%s success backup database=%s' % (datetime.datetime.now(), db)
评论 (0)