Python 自动备份和下载WordPress + MySQL 的 fabric 脚本

我的博客搭建在一个KVM VPS上,今天也写了一个fabfile来dump数据库、打包WordPress目录,并下载到本地。fabfile代码如下:

 代码如下 复制代码
#!/usr/bin/python
# use Fabric to manage all the hosts in perf env.
# usage: fab -f vps_fabfile.py download_backup
# author: Jay <smile665@gmail.com>
 
from fabric.context_managers import cd
#from fabric.context_managers import settings
from fabric.operations import *
from fabric.api import *
from datetime import datetime
 
env.hosts = 'smilejay.com'
env.port = 22
env.user = 'root'
env.password = '1234'
 
 
@task
def download_backup():
    # backup my WP file and database, download them to the local machine
    dt = datetime.now().strftime("%Y-%m-%d-%H-%M-%S")
    local_dir = '/home/jay/backup'
    with cd('/tmp'):
        nginx = '/usr/share/nginx'
        wp_root = '/usr/share/nginx/html'
        exclude = 'html/wp-content/cache'
        bk_name = 'wp_%s.tar.gz' % dt
        clean = 'rm -f wp*.tar.gz'
        mysql = 'mysqldump -uroot -p1234 -A > %s/mysql-dump.sql' % wp_root
        tar = 'tar -zcf %s -C %s html --exclude=%s' % (bk_name, nginx, exclude)
        run(clean)
        run(mysql)
        run(tar)
        get(bk_name, '%s/%s' % (local_dir, bk_name))

Github地址:https://github.com/smilejay/python/blob/master/py2014/vps_fabfile.py
当然,我一般也会使用BackWPup插件来备份WordPress;刚好发现,前段时间使用Nginx替代Apache后,BackWPup运行时仍然要写“/var/www/html/wp-content/backwpup-logs/”目录,所以有个权限问题,最近两个月都是运行失败了。后来对这个目录开放了写权限就没问题了。

时间: 2024-09-27 19:59:10

Python 自动备份和下载WordPress + MySQL 的 fabric 脚本的相关文章

centos自动备份网站文件与mysql数据库脚本

案例一:shell+cron实现MySQL自动备份且自动删除N天前备份  代码如下 复制代码 #!/bin/sh DUMP=/usr/local/mysql/bin/mysqldump OUT_DIR=/home/ldl/xxx/backup/ LINUX_USER=ldl DB_NAME=ldl DB_USER=ldl DB_PASS=xxx #How much days backup most DAYS=1 #Core of script cd $OUT_DIR DATE=`date +%Y

定时自动备份IIS的WWW日志的vbs脚本_vbs

dim IISCount,IISObject,logfiledir,fso,LogFilePeriods,inputtime,site,sites,i,j,sitename(999),WshShell 'on error resume next set WshShell = WScript.CreateObject("WScript.Shell") Set fso = CreateObject("scripting.FileSystemObject") set II

备份校验两不误,MySQL自动备份还原校验设计详解

作者介绍 庞阔,优朋普乐传媒运维基础部经理.负责数据库运营管理及平台设计开发,监控设计改进,问题跟踪处理,机房网络维护管理,目前四个专利已在专利局申请中.擅长数据库运维管理及Shell.Perl.PHP编写.   背景   最近关于数据库故障出现的问题较多,不论大小公司对数据的备份要求都很高,但对校验数据备份的有效性要求更为迫切,很多公司对于自动备份和还原都已经形成体系,但对于还原后的备份有效性校验可能都不太完善,而且目前网上也没有较为完善的检验机制(可能我没找到).   对数据库备份的有效性校

Linux VPS主机定时自动备份网站及MYSQL数据库的脚本

从我们开始学习建站开始,不论我们是用免费的虚拟主机,还是省吃俭用购买的付费主机,以及我们在更大的项目需要转向VPS或者服务器存储:不论我们是不是技术科班出身,还是跟老左一样,看到网友们都有自己的网站于是热情澎湃的也搭建一个玩玩:不论我们的网站是大还是小,有盈利还是没有盈利,都要学会基本的自我维护,尤其是网站数据的备份.   我们不要过分的依赖和信任主机商给我们提供的备份,即便我们购买的很牛.很贵的服务商的产品,他们也可能会由于各种的可能性导致数据丢失或者奔溃的情况,我们可以选择定期手工备份或者用

CentOS 系统实现自动备份MYSQL 发往远程FTP

中介交易 http://www.aliyun.com/zixun/aggregation/6858.html">SEO诊断 淘宝客 云主机 技术大厅 网站最重要的是数据,可明天手动备份还是太繁琐了,而且8630.html">有时候怕忘记,尤其是使用VPS的朋友,说不定那天IDC 跑路了就完蛋了,所以今天给大家准备一个自动备份MYSQL数据库的脚本,网上有不少类似的脚本,不过测试了几个不是这个问题就是那个问题,要不就只能备份单个数据库导出SQL文件.反正不是特别理想.晚上选择

Navicat异地自动备份MySQL方法详解(图文)_Mysql

启动navicat软件,使用"链接" ,连接mysql数据库,使用前请保证防火墙可以通过. Navicat For MySQL下载地址: 下载地址 http://www.jb51.net/database/2223.html 随后弹出,随意起一个"连接名";输入"主机名/ip"这里填写mysql数据库所在服务器的ip地址,用户名密码为mysql数据库的root和密码,一般情况下为xinwei. 这样左边就可以列出数据库"连接名"

用批处理实现自动备份和清理mysql数据库的代码_Mysql

有网友问我在win2003下如何自动备份MySQL数据库,既然是自动备份,那肯定得写脚本.我想了想,这个并不是很困难,是很容易实现的,备份可以用脚本实现,那自动又该如何实现呢?也很简单,就用windows自带的"任务计划"功能,设定一个时间,让系统定时跑脚本,不就实现了自动备份数据库的功能了吗? 不过到现在已经有很多的mysql备份软件,例如我比较喜欢使用的是护卫神的好备份软件. 下载地址:http://www.jb51.net/softs/42944.html 首先把脚本代码贴出来:

mysql定时自动备份数据库脚本代码(linux/windows)

操作步骤: 方法一 1.安装p7zip:由于源里面没有此包,直接下载源码安装. 地址:http://p7zip.sourceforge.net/  代码如下 复制代码 wget http://sourceforge.net/projects/p7zip/files/p7zip/9.20.1/p7zip_9.20.1_src_all.tar.bz2 tar xvf p7zip_9.20.1_src_all.tar.bz2 cd p7zip_9.20.1_src_all make && mak

自动备份 MySQL 数据库的工具

MySQL Backup Tool 备份 MySQL 数据库是数据库管理的基本任务,虽然可以直接通过 mysqldump 进行备份,但是,要实现自动备份还是需要做许多工作.MySQL Backup Tool 为我们提供了自动化备份 MySQL 数据库的支持. 特性: mySQL 备份(自动, 手动和定时)结构 /架构和存储过程 / 函数压缩为 zip 文件 (包含口令保护)黑名单和白名单表转储删除老的备份CPU 负载均衡软件升级检查               获取程序 MySQL Backup