1
一個人的職場江湖,第一篇
一個人的職場江湖,第二篇
2022年5月5號,晚上9點多,蘭州,
專案專項會議室里,團隊成員都擠在一張會議桌前,熱火朝天地趕進度,
李松嬉皮笑臉地與同事插犖打科,同時還不忘操作鍵盤處理作業,
突然,喧鬧聲安靜下來,他臉色煞白,凝固在那兒,像一尊石像,
旁邊的同事拍拍他,問他怎么了,
他發抖著,如似自言自語,“我把資料庫里的表全刪了……”
我坐他對面,正在修改上線材料,距離系統上線只剩一周了,
我也注意到了他的異樣,聽到他說出“資料庫”三個字,我心頭一驚,
無論他的聲音多小,我都能體會到,出大事了!
我經歷過一起這樣類似的大故障,
2011年3月份,半夜一串急促的電話聲吵醒了沉睡的我,
剛拿起手機,就傳來客戶急切的聲音,“快來機房,你們系統資料庫的硬碟壞了!”
我打了個激靈,起床穿衣,打車狂奔而去,
我當時還是這個專案的專案經理,應用軟體的開發和運維由我們負責,系統運行的服務器和資料庫的運維由客戶負責,
因為預算的問題,專案一直未能擴充硬體配置,由于資料庫在共享存盤上空間不足,客戶的DBA(資料庫管理員)就把服務器的硬碟空間劃給了資料庫臨時使用,
為了保證4月初可以正式承接集團公司統一部署的新業務,當天晚上,DBA準備將服務器硬碟上的資料遷移到新擴容的共享存盤上,
誰曾想,硬碟壞了,服務器掛了,機器已經運行了七八年,說罷工就罷工,
剛開始并不認為是什么問題,畢竟還有資料庫備份,客戶采購的商業備份軟體會以“每周全量+每日增量”的方式備份資料,
我們只要把備份包恢復即可,
然而,檢查備份包才發現,大小只有幾百兆 — 備份的資料是無效的,
因為大家一直沒有組織過應急演練,都想當然地認為每日備份沒有問題,
作為客戶的核心系統,系統每天運行著上千萬張批量處理的業務,
同時,省分公司為了迎接集團公司的上半年檢查,系統務必要趕在下月初上線,下周集團公司會提前派人進行一次專題檢查,
關鍵時期,出現這種情況,猶如晴天霹靂,
機房里,省分公司的各級領導都已到達并部署各種應急安排,
-
客戶服務部撰寫通稿,要求客服人員統一說法,
-
各地市公司的管理人員針對高優先級的業務優先手工處理,
-
客戶集成部調配兩臺高性能機器重新搭建資料庫,
-
……
此時已經是凌晨3點,
對了,我和同事2010年5月份在最后一個地市完成系統推廣后,順便研究了資料庫的資料匯入匯出命令,隨手把資料庫中的靜態資料做過一次匯出備份,
趕緊將這個備份從服務器下載檢查,竟然可用!
一年前匯出的38張靜態資料表完好無損,這類靜態表資料一般變化不大,最核心的業務規則都已包含其中,
早晨8點,趕在正常營業前,系統已基本可以運行,不會再對業務運營產生較大影響,
當時還有個遺憾,用戶相關的表沒有備份,造成團隊成員一直忙活到次日凌晨才算把用戶權限補齊,
而后的幾天就是一種煎熬,新一期的業務配置全在測驗庫,而測驗庫也在這個資料庫上,也沒有手工備份,
如果無法恢復,這意味著本期作業全要推倒重來,對專案組成員的士氣將是一次極為沉重的打擊,
忐忑了七天,客戶告知,專業恢復公司已通過資料庫邏輯層面將資料恢復,匯入新庫測驗可以正常使用,故障正式消除,
總算長舒一口氣,這次經歷,刻骨銘心,心有余悸,終身難忘,
2
沒想到啊,這次又碰上!
我立即招呼各位專案組成員,馬上停止手頭上的作業,并將資料庫關停,
然后聽李松做了什么,
他負責將測驗環境的資料庫資料同步到正式庫,為下周的系統上線做準備,
正常的同步順序應是:
-
在測驗庫上執行匯出建表及資料的腳本;
-
在正式庫上執行清除表和資料的腳本;
-
在正式庫上執行從測驗庫匯出的建表和插入資料的腳本,
當時他不知是聊天太嗨了,還是加班太久反應遲鈍了,他先執行了步驟2,
而且,他是在測驗庫上執行的步驟2,即,在測驗庫上執行了清除表和資料的腳本,
至此,刪庫腳本開始瞬間執行,無法停止,測驗庫里一年的心血就在命令列的不斷跳躍中化為灰燼,
歷史總是驚人相似,這次的測驗庫沒有手工備份,
國有企業實力雄厚,對安全要求很高,它們的系統并沒有使用互聯網公司的云資源服務,而是集采服務器運行在自己的機房,
具體服務器上應用的安裝和部署都是由我們自己來負責,
因為是測驗庫,我們也沒有將服務器開啟硬碟自動備份模式,
批評抱怨已沒有意義,下周系統要上線,時間非常緊迫,當前最緊急的事情是恢復資料,
經過商討,考慮了三種方案:
-
請公司技術專家恢復資料,
-
請專業公司恢復資料,
-
手工重新補錄資料,
第3種方案不到萬不得已決不考慮,作業量實在太大了,最樂觀估計,專案成員在24小時不休息的情況下,上線時間也要延遲一個月,
大半夜的,我已不顧及太多了,一個個電話把公司的技術大拿們喊起來,解決這個問題,
折騰了幾個小時,天已大亮,毫無結果,
如何向客戶答復?如實交待的話,客戶剛對我們樹立的信心,必將再次被摧毀,畢竟,出現這種低級操作失誤,很不應該,
最終決定淡化處理,形成統一回復:“昨晚資料庫存在一些小問題,正在加緊修復,預計明后天就可以處理完成,不影響上線,”
上午半天,一無所獲,我們作為應用軟體廠商,在硬體及中間件的知識和經驗儲備上還是不夠充足,
我們決定啟用方案2,聯系外援,
專業恢復公司評估過后,給出意見,全部表大約78張,只要恢復40張表就要給全價,全價8萬元,
真黑!
人在落難時,只能任人宰割,
這就像鑰匙忘家里,需要開鎖公司處理一樣,開鎖公司要多少,你只要能承受,就要支付,卡在這個關口上,你能怎么辦?
我們決定只恢復其中的18張最最關鍵的表,這樣價格可以再低一些,其它表可以快速手工來補,最終談定,價格4萬元,先交2萬塊錢押金,
成交!不能再猶豫,比對了其它一些專業公司,也就這個家技術靠譜,
如果不請專業恢復的話,全靠人工重做,這延遲一個月所帶來的費用及損失會遠遠高于4萬塊,
專業恢復公司先將資料拷貝,中間花費了一天時間處理,
等待恢復結果的那幾天,心急如焚,度日如年,
客戶也明顯感覺到氛圍不對,強烈要求我們正式說明調查原因,
最終在故障發生后的第三天,恢復作業完成,但是18張核心表,只成功恢復出16張,另外2張雖然沒能恢復,但資料量不大,可以手工處理,
而且,最最核心且作業量最大的5張表都已恢復出來,這將極大節省我們的修復時間,
因為2張核心表未能恢復,則我們支出的費用為 4萬元/18張 * 16張 = 3.55萬元,
血的教訓!
而后大家24小時不停歇地全力加班修補,最終在5月11號恢復原狀,不影響5月12號的正式割接,
事后的處罰不可避免,
-
直接操作人作業不認真,為公司帶來較大損失,給予記過處分,扣減工資3000元;
-
專案經理負有管理責任,忽視資料備份的重要性,給予警告處分,扣減工資1000元,
3
有些朋友會質疑,公司那么大,一個恢復資料庫的高手都沒有嗎?
公司有技術人員,但不能算為高手,就如三甲醫院有很多,但不能說醫院里各科室都是名醫,
擅長資料庫恢復這塊的高手主要來自專業資料公司或運維集成公司,因為他們一直專注這塊,干得多了,見得多了,自然熟能生巧,
公司也有安全規范,明確要求了任何重要操作要備份,然而,在實際作業中,參與人只有經歷過這類事情才會深刻領會安全規范里的條例為什么會有這一條,
安全生產,警鐘長鳴,這件事之后,我在公司層面組織了一次系統安全大排查,并加強了對專案經理的安全生產的宣貫力度,
同時修改了專案管理章程,引入定期抽查機制,將資料庫的備份作業和應急預案的檢查,納入了抽查范圍,
一個公司管理二三十個專案經理還比較輕松,但如果兩百個三百個專案經理,而且專案經理分散在全國各地,又如何管理和宣貫?
所以,針對公司里的385位專案經理,安全生產如何宣貫到位?這就對專案管理委員會的作業提出了考驗,
接下來,詳見“一個人的職場江湖”第四篇,我在專案管理委員會干的那些事,
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/536887.html
標籤:其他
上一篇:Python第八章實驗報告
