這次學習歷程檔案被刪,關鍵在於工程師「 VM 設定錯誤」,VM 指的是虛擬機器(Virtual Machine),可以想像成是另一個測試用的環境,雖然環境及功能都一樣,但它是「虛擬」的,無論在虛擬機上如何變更破壞,都不會影響到正式機器的運作,這次工程師他在替學校建立公版模組時,本應選用「正式版」的 VM 設定,卻不慎選到「測試版」的,導致所有的資料連結錯誤。
然而致命點是,「測試版」的 VM 環境因內建重開機後,就會自動還原成初始狀態,所以過去資料不會保留,就像以前學生時代,不管是在電腦教室偷安裝遊戲或偷下載影片,重新開機後通通都會被洗掉的道理一樣,這次的「學習歷程檔案」就是因為這樣而規組害了了(台語),想知道完整始末可以拜讀 iThome 這一篇;很多人問不是有備份,為何不能還原就好?由於當時在新舊機房搬遷期間,雖然有備份,但諸多環節上陰錯陽差導致備份機制沒有到位,不能挽救這次失誤。
無論是哪一種備份方式,都務必要做完整,別認為有做到幾項就好,要以能維持整體系統不中斷為最終目標的做備份,例如採用 High Availability 的備援系統;過程中的檢查工作也很重要,尤其是移機前後、服務重新開放前後,或涉及大量資料轉移時,務必再三反覆確認服務狀態,像這次事件的工程師,很可能是對系統不熟悉或沒有反覆檢查所發生,當發生問題或資料遺失時,如果不確定下一步該怎麼做,千萬別貿然行動,應先停止操作,讓狀態凍結,再仔細檢查並求救,操作實行後,也必須回頭檢查最後設定,及早發現及早治療,降低出率。
像我平常跟客戶溝通時,碰到最大問題是備份廠商的選擇及預算,有時客戶傾向於找便宜的雲端/備份廠商,其實每間公司資料重要程度及規模不同,不一定要在備份上把預算花到最滿,建議可以用 Open mind 的精神多比較幾家,找到可靠的廠商及合適的備份方案,這件事之所以重要是因為,未來如果發生任何狀況,挽救資料的成本將可能更高,甚至資料也不一定百分之百救得回來。