在 Drupal 模組中,有兩個模組可以做這件事,一個是 Backup and Migrate 模組,另外一個是 Demonstration site 模組。
然而 Backup and Migrate 有個致命的缺點:那就是在還原資料庫時,他不會先 Drop 掉所有的資料表再還原。
這個缺點會有什麼影響呢?試想下列情況:
- 用 Backup and Migrate 備份 =>Test Backup
- enable 某個會建立資料表的模組 (例如: Commerce Cart) => Test Module
- 用 Backup and Migrate 還原 Test Backup
- enable Test Module
通常我們在使用還原功能時,並不會有習慣去 disable & uninstall 模組,所以這個缺點還蠻要命的~
另外 Backup and Migrate 還有個問題就是只支援 MySQL / MariaDB,其他的資料庫並不支援;不過這個問題我個人是覺得還好,畢竟比較常用的也是 MySQL。
最後要說一下 Demonstration site 模組的問題:
- 目前 7.x-1.0 這個版本有問題,不能正常還原,要用 7.x-1.x-dev 的版本才行
- Demonstration site 的更新沒有 Backup and Migrate 勤快
- 設定也比較簡單,沒有備份檔案或是其他的進階功能
- 在 bug report 那邊也是有 bug 擺了半年以上沒人處裡