2016-04-25 226 views
2

我對服務器管理相當陌生。我有我的Laravel應用程序啓動並運行,我想確保它有適當的備份。我已經研究了一些備份軟件包,並且已經解決了https://github.com/spatie/laravel-backupLaravel恢復備份

但是,一旦服務器出現故障,我需要知道如何使用最近的備份(將在AWS S3上)來恢復重建服務器上的數據庫。有沒有關於如何做到這一點的指南的建議?我似乎無法找到任何東西,除非它不需要太多的學習,而只需要一些mySQL命令。

謝謝!

回答

0

我會使用複製和Laravel內我會嘗試切換連接到副本數據庫服務器,所以事情可以順利運行,直到問題得到解決。

看看這個Cross-Region Replication

一個典型的生產環境對您的部署,以從故障中恢復需要最重要的事情自動運行備份。這些部分通常是您的數據庫和存儲文件夾以及配置文件。

另外,當您部署laravel應用程序時,沒有太多「值得」備份的事情,您可以選擇將整個磁盤鏡像到某個位置,也可以安排每N次運行一次的備份腳本,對你的應用程序更重要的東西。

就我個人而言,我不會依賴來自laravel的軟件包來處理我的備份,您始終可以使用其他備份實用程序,複製等。


更新

在下面的鏈接看看:

User Guide » Amazon RDS DB Instance Lifecycle » Backing Up and Restoring Backing Up and Restoring

你可以調用API函數RestoreDBInstanceFromDBSnapshot上作爲例子顯示。

但我不認爲自動恢復或神奇地使一切正常工作的東西存在,你需要做很多安全檢查,如果這樣的事情甚至會被嘗試。最後一句話,我相信手動輸入或發送請求的一個好的解決方案將是最堅實的解決方案。

+0

我曾想過主從複製。但是,恢復主人的實際過程呢?這就是我想要了解的,一旦它停止後恢復主服務器的實際過程。謝謝! –

+0

@MattPierce查看更新後的答案,如果您不使用Amazon Web服務,並且您只是使用MySQL安裝,請考慮使用此類虛擬化解決方案並在其上運行MySQL實例,定期拍攝快照以保留新副本,或者如果你不使用虛擬化,只需要備份整個MySQL數據庫,當它失敗時,修復問題,然後恢復。 當你想要實現備份/恢復數據庫和文件時,老實說有很多解決方案。如果你想盡可能安全的僱用一個具有更好知識的系統管理員。 – Gntem