天天看點

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

繼續閱讀