一、引 言
目前我廠企業(yè)內(nèi)部從銷售、采購、進(jìn)銷存到財(cái)務(wù)管理等各項(xiàng)業(yè)務(wù)信息都已納入ERP系統(tǒng)進(jìn)行規(guī)范管理,隨著北石ERP項(xiàng)目應(yīng)用的逐步深入,每天都會有大量業(yè)務(wù)數(shù)據(jù)實(shí)時(shí)存入ERP數(shù)據(jù)服務(wù)器,因此,在實(shí)現(xiàn)ERP系統(tǒng)正常運(yùn)行的同時(shí),如何保證ERP數(shù)據(jù)安全則顯得相當(dāng)重要。目前市場上雖然有很多數(shù)據(jù)備份軟件,而且功能強(qiáng)大,但是價(jià)格昂貴,實(shí)施部署比較繁瑣。筆者在長期的系統(tǒng)維護(hù)過程中,利用SQL server和操作系統(tǒng)自有的部分功能,同時(shí)進(jìn)行簡單的編程開發(fā),自行制定了一套廉價(jià)、高效、可控的ERP數(shù)據(jù)備份方案。
二、分析、規(guī)劃、部署備份方案
2.1 ERP系統(tǒng)數(shù)據(jù)特點(diǎn)
北石廠ERP硬件服務(wù)器設(shè)置采用三層式架構(gòu)(3-Tier),即在傳統(tǒng)的客戶端(Client)及數(shù)據(jù)庫服務(wù)器(Data Base Server)中間架設(shè)應(yīng)用程序服務(wù)器(Application Server)。
所有在易飛ERP系統(tǒng)錄入的數(shù)據(jù)均通過局域網(wǎng)絡(luò)保存在ERP數(shù)據(jù)庫服務(wù)器的SQL數(shù)據(jù)庫中,并且即時(shí)進(jìn)行更新。因此,保證ERP數(shù)據(jù)安全的關(guān)鍵在于對ERP數(shù)據(jù)服務(wù)器上的SQL數(shù)據(jù)庫及時(shí)進(jìn)行備份。
2.2 基本的備份過程分析
2.2.1 定時(shí)執(zhí)行本地SQL數(shù)據(jù)庫備份
SQL Server本身具有定時(shí)備份數(shù)據(jù)庫的功能,我們可以通過設(shè)置SQL數(shù)據(jù)庫維護(hù)計(jì)劃,在每天凌晨1:00執(zhí)行一次SQL數(shù)據(jù)庫完全備份,這樣可以將易飛ERP的兩個(gè)關(guān)鍵SQL數(shù)據(jù)庫備份以BAK文件的形式存放在本地磁盤。
圖1 SQL數(shù)據(jù)庫本地備份
2.2.2 生成壓縮包
圖2 生成壓縮包
北石ERP上線至今,已經(jīng)接近五年時(shí)間,目前每天生成的BAK備份文件大小總共為5G多,如此龐大的備份文件,如果不加處理,在后續(xù)的處理過程中,將會給服務(wù)器造成一定的壓力。筆者經(jīng)過研究發(fā)現(xiàn)SQL Server數(shù)據(jù)庫中主要存放的是文字信息,一般純文本內(nèi)容都具有高可壓縮性,因此數(shù)據(jù)庫生成的BAK備份文件也應(yīng)該具有一定的可壓縮性,在嘗試使用Winrar壓縮軟件對其進(jìn)行壓縮后,發(fā)現(xiàn)壓縮文件只占原文件大小的10%左右,壓縮效果相當(dāng)可觀。
通過使用Winrar壓縮軟件,可以大大緩解BAK備份文件對數(shù)據(jù)服務(wù)器磁盤空間的占用。當(dāng)然,由于BAK文件大小在5G以上,壓縮時(shí)間會比較長,一般在20~30分鐘左右。而且運(yùn)行Winrar程序比較耗費(fèi)服務(wù)器系統(tǒng)資源,所以通常選擇在服務(wù)器比較空閑的時(shí)候?qū)AK文件進(jìn)行壓縮。
2.2.3 將壓縮后的備份文件復(fù)制到異地服務(wù)器
ERP數(shù)據(jù)服務(wù)器本地?cái)?shù)據(jù)存儲采用由四塊scis硬盤組成RAID5磁盤陣列架構(gòu),在單塊磁盤出現(xiàn)故障的情況下可以保證數(shù)據(jù)完好無損,但是如果數(shù)據(jù)服務(wù)器發(fā)生磁盤RAID信息丟失、系統(tǒng)崩潰或者超過兩塊硬盤同時(shí)損壞時(shí),仍然會造成本地備份的ERP數(shù)據(jù)出現(xiàn)無法順利導(dǎo)出的情況,因此對于如此重要的ERP數(shù)據(jù)而言相對保險(xiǎn)的方法是將其復(fù)制到其他服務(wù)器進(jìn)行異地存儲。
ERP系統(tǒng)實(shí)施過程中,企業(yè)也在考慮數(shù)據(jù)集中存儲的問題,2005年開始部署了一臺存儲服務(wù)器,針對ERP備份數(shù)據(jù),在存儲服務(wù)器上專門設(shè)置了一個(gè)遠(yuǎn)程訪問的用戶和一個(gè)只對該用戶開放共享權(quán)限的網(wǎng)絡(luò)共享文件夾,用來異地存儲ERP數(shù)據(jù)服務(wù)器上的備份壓縮包。存儲服務(wù)器采用磁盤陣列柜存放文件數(shù)據(jù),獨(dú)立于服務(wù)器操作系統(tǒng),數(shù)據(jù)存儲更加安全,更加穩(wěn)定。
圖3 異地存儲
2.3 利用VB編程,實(shí)現(xiàn)自動壓縮、自動復(fù)制過程
以上備份過程原理簡單,容易實(shí)現(xiàn),但是如果僅僅依靠手動方式進(jìn)行操作,則存在一定的問題。
一方面,要想真正保證數(shù)據(jù)的安全,必須嚴(yán)格要求系統(tǒng)維護(hù)人員將壓縮備份、復(fù)制文件等工作其作為一項(xiàng)專門的日常性事務(wù)來處理,每天必須執(zhí)行,不得有所延誤。但是由于人為因素的不確定性,系統(tǒng)管理員出現(xiàn)疏忽,偶爾忘記備份也在所難免,如果哪天忘了或沒有來得及壓縮備份和異地存儲備份,而ERP數(shù)據(jù)服務(wù)器正好又出現(xiàn)故障或者SQL數(shù)據(jù)被破壞,那麻煩可就大了。
另一方面,由于壓縮BAK文件和復(fù)制壓縮備份的過程需要大量占用服務(wù)器系統(tǒng)資源,為了不影響服務(wù)器的正常使用,所以一般要選在服務(wù)器相對空閑的時(shí)候(下班后或者每天上班前)進(jìn)行備份操作。而壓縮和異地復(fù)制的時(shí)間都比較長,這些都將耗費(fèi)系統(tǒng)維護(hù)人員大量的時(shí)間和精力。
因此,手動發(fā)起的備份模式在一定程度上很難確保ERP數(shù)據(jù)的安全。
那有沒有比較好的解決辦法呢?答案當(dāng)然是肯定的。那就是把這些手工很難完成的過程交給計(jì)算機(jī)自動完成。于是筆者使用常用的編程工具VB編寫了兩個(gè)小程序。程序一和程序二分別可以自動完成對BAK備份進(jìn)行壓縮和異地存儲。由于目前程序開發(fā)工具比較多,均可實(shí)現(xiàn)以上功能,所以本文不對VB程序代碼展開說明,僅將程序的基本思路和實(shí)現(xiàn)的過程進(jìn)行簡單介紹。
2.3.1 程序一:自動壓縮BAK文件
SQL定時(shí)生成的BAK文件,以備份數(shù)據(jù)庫名+備份日期和時(shí)間命名,具有一定的規(guī)律。程序一運(yùn)行后會按照相同的規(guī)律自動生成BAK文件的路徑和文件名并保存在一個(gè)列表文件里。
然后,程序再調(diào)用Winrar壓縮軟件讀取列表文件,對其中列出的BAK文件進(jìn)行壓縮,生成一個(gè)新的壓縮包。
2.3.2 程序二:將備份壓縮包傳送到異地服務(wù)器
程序二內(nèi)封裝了存儲服務(wù)器的某個(gè)Windows用戶和密碼,該用戶擁有讀寫共享文件夾權(quán)限。程序運(yùn)行后會首先自動連接存儲服務(wù)器,并完成用戶身份驗(yàn)證,獲取到對應(yīng)網(wǎng)絡(luò)共享文件夾的完全控制權(quán)限,然后就將備份壓縮包自動復(fù)制到存儲服務(wù)器上的共享文件,從而安全、自動的實(shí)現(xiàn)備份壓縮包異地存儲。
2.3.3 利用windows任務(wù)計(jì)劃功能,定時(shí)運(yùn)行程序一和程序二
每天凌晨1:00SQL數(shù)據(jù)庫執(zhí)行一次完全備份,耗時(shí)大概二十分鐘。這是在SQL維護(hù)計(jì)劃中進(jìn)行設(shè)置,由SQL server自動管理,每天在固定的時(shí)間執(zhí)行一次。
類似的,也可以設(shè)置windows任務(wù)計(jì)劃,每天在固定的時(shí)間運(yùn)行一次程序一和程序二,自動完成壓縮和異地存儲的操作。
2.4 確定自動備份方案
上述內(nèi)容已經(jīng)對備份方案中的具體過程和方法進(jìn)行了詳細(xì)分析,在此基礎(chǔ)上,筆者經(jīng)過細(xì)致分析,綜合考慮,最終形成圖4所示備份方案。
圖4 北石ERP數(shù)據(jù)備份方案示意圖
此方案部署成功后,每天會在規(guī)定的時(shí)刻執(zhí)行相應(yīng)步驟,直至完成ERP數(shù)據(jù)庫的異地備份。所有備份過程自動完成,不需要過多的人工干預(yù)。
2.5 結(jié)合AM企業(yè)即時(shí)通訊系統(tǒng),對服務(wù)器狀況進(jìn)行監(jiān)控,確保備份順利進(jìn)行
備份方案部署后,數(shù)據(jù)服務(wù)器和存儲服務(wù)器上每天都會自動生成的一個(gè)數(shù)據(jù)備份文件和壓縮包,由于服務(wù)器上磁盤空間大小有限。如果不加處理,日積月累磁盤空間終會耗盡,當(dāng)服務(wù)器磁盤沒有足夠的剩余空間時(shí),數(shù)據(jù)備份也就無法完成,因此,最開始的時(shí)候,系統(tǒng)維護(hù)人員還需要對服務(wù)器磁盤狀況進(jìn)行監(jiān)控,定期清理磁盤。每次清理時(shí),一般保留一周內(nèi)的BAK備份文件和壓縮包,超過一周的歷史的備份壓縮包則可以刻錄成DVD光盤集中存檔。
由于仍需要系統(tǒng)維護(hù)人員定期對磁盤空間進(jìn)行維護(hù),為了避免系統(tǒng)管理員忘記清理磁盤,確保磁盤有足夠的剩余空間保存?zhèn)浞,筆者又利用VB又編寫了一個(gè)小程序結(jié)合windows的任務(wù)計(jì)劃,該程序可以定時(shí)檢測服務(wù)器磁盤狀況。并且與AM企業(yè)即時(shí)通訊系統(tǒng)進(jìn)行集成,當(dāng)檢測到磁盤剩余空間不足10G時(shí),程序會馬上調(diào)用AM消息控件,群發(fā)即時(shí)消息告知相關(guān)系統(tǒng)維護(hù)人員“磁盤空間不足,請及時(shí)清理”。系統(tǒng)維護(hù)人員收到消息后即可立即著手清理磁盤,真正做到防患于未然。
三、結(jié) 論
此數(shù)據(jù)備份方案配置簡單實(shí)用,備份過程清晰,方案一經(jīng)部署,維護(hù)簡單,所有備份過程均自動完成,無需過多的人工干預(yù)?梢詫⑾到y(tǒng)管理員從以往瑣碎的循環(huán)作業(yè)中解放出來。同時(shí),自動對磁盤剩余空間的監(jiān)控以及與AM的有效集成,為順利完成數(shù)據(jù)備份提供了有力的保障。
到目前為止,該數(shù)據(jù)備份方案在捍衛(wèi)企業(yè)ERP數(shù)據(jù)方面仍發(fā)揮著重要作用。
轉(zhuǎn)載請注明出處:拓步ERP資訊網(wǎng)http://www.ezxoed.cn/
本文標(biāo)題:有效捍衛(wèi)ERP數(shù)據(jù)安全
本文網(wǎng)址:http://www.ezxoed.cn/html/consultation/1083951680.html