寫這一篇徹底是一個工做插曲,由於發生了一件工做中的事情,因此想寫出來,給初入這一行的工程師、程序員引覺得戒!程序員
通過描述:服務器
公司利用週末的時間安排對服務器上的Oracle9i進行升級,直接升級到Oracle11g,對原有的數據備份後,在Oracle11g上還原;測試
就是這個升級操做,問題出來了:spa
當對備份的dmp文件在Oracle11g上還原的時候,發現有一張的表數據爲空,也就是備份的文件沒有完整,這下完蛋了,3年的數據,這個表竟成了空的。軟件
客戶電話來質問,怎麼辦?怎麼辦?程序
我要說的也不是如何挽救,由於這樣的問題在目前的狀況和條件下沒有解決辦法了.技術
我要說的是問題產生的緣由,若是咱們做何防範措施,這樣的問題也許就不會發生,即使發生了,也應該有完整的數據還原;支付
負責升級的程序員已經有3年的工做經驗了,升級前對備份的數據沒有檢查,延續了原來的備份步驟,問題發生了,也證明了原來的備份步驟有問題,歷來沒有檢查過備份的數據完整性問題;經驗
你若是是這個程序員,你如今負責升級服務器上的Oracle,你會怎麼作?數據
也許你內心早有了答案。
這也是我題目所說,你成長的代價!而針對這種狀況出現的代價,確實大了些,公司只能經過高昂成本的代價來彌補客戶的損失,話說回來,多少錢才能買回客戶幾年的數據?在客戶看來,這也許根本不是錢的問題。
作爲程序員,你成長到工程師,再成長到項目經理,再成長到技術總監或者其餘職位,想過沒有,你和公司須要付出多大的代價?
你經歷多少熬夜?
你損害了多少健康?
你受了多少委屈?
你經歷了多少系統BUG?
公司支付多少本不應的成本?
客戶經歷了多少的風險?
....
人們常說:預防比解決更重要!這句話用在軟件行業一點也不錯,若是你能仔細的備份數據?若是你能檢查數據備份的完整性?若是…
縱使有太多的若是,也沒法阻止已經發生的事實!
因此,深爲程序員的你、工程師的你、項目經理的你…永遠不要怕想的多,永遠不要懶的再檢查一遍,永遠不要懶的再測試一遍…
-----------------------辛苦碼字,轉載註明。