天天看点

SAE定时备份博客数据库

WordPress迁移到SAE之后,以前的backwpup插件就不能直接用了,但是又需要备份,所以就利用SAE的几个服务来实现这个功能。

1.deferred job

SAE自带的数据库导入、导出服务,可以直接将数据库导出到storage下。

2.cron

SAE的计划任务,根据设置定时访问设定的页面,来触发我们的备份行为。

下面是操作步骤:

1.新建一个叫back的storage,用来存放备份文件。

2.在网站根目录新建一个文件back.php,内容如下

1 2 3 4 5

<?php

$date

date

(

'Y-m-d'

);

$dj

new

SaeDeferredJob();

$taskID

=

$dj

->addTask(

"export"

,

"mysql"

,

"back"

,

"$date.sql.zip"

,

"数据库名"

,

""

,

""

);

?>

其中addtask的第3个参数就是刚刚新建的storage名称

第4个参数是要保存的文件名,本文设置成当天日期

注意两点:

①可以把.sql改成.csv,这样导出的就是csv格式,.zip是可选项,不加也行。

②支持目录,例如test/$data.sql.zip就是把文件备份到test目录下

数据库名根据你的实际情况修改

3.编辑网站根目录下的config.yaml,这个用来设置cron,增加如下几行

1 2 3 4 5

cron:

- description: back

url: back.php

schedule: every day of month 00:20

timezone: Beijing

url就是我们刚刚新建的php文件,schedule是调用频率,我们设置的是每天的00:20调用一次。

4.最后测试一下是否能正确导出,直接访问http://域名//back.php,然后到SAE管理面板查看对应的storage中是否有备份文件。

原文来自: http://leo108.com

继续阅读