曾經在以前的公司做過IT,凡事跟電腦相關的都要做,也就是俗話說的IT民工吧。
當時公司里有一個數據庫會接收到的測試數據大約為一個月100萬條左右,然后要通過程序每五分鐘左右抓取一下這個數據庫。
說實話,當時壓力蠻大的,因為程序涉及到生產不能停,頻繁的讀取這么多數量的數據庫會導致程序很卡,一卡使用這個程序的人就會停下生產的,所以我在方面也研究了一些方法 注:當時使用的服務器為windows2008r2,數據庫為sql 2008版本,程序為php語言編寫。
我總結一下當時的方法:
1、每個月都會找個時間重啟服務器,釋放CPU和內存資源
2、一定要分開文件服務器和數據庫服務器為同一臺,因為文件服務器占用帶寬資源比較嚴重
3、防止數據庫鎖死,編寫程序時已經避免同時使用更新語句
4、使用任務管理把相應的數據進行后臺處理,如先把數據寫到a表里,再通過任務后臺讓它跟b表進行匹配
5、編寫sql語句時,盡量精確匹配,不要模糊匹配,可以通過數據庫管理器來查詢所用的時間是多少
6、關于數據物理安全的小建議,一定要給系統盤和數據盤,做好raid,經常觀察硬盤是否亮紅燈報警,要及時更換,二,使用備份軟件對數據進行定時備份,在空閑的時間點備份,不會影響數據庫使用的效率,比如吃飯的點
系統無法啟動時,請勿隨意重裝系統,可以試一下最后一次正確配置啟動
總結:實際情況要有靈活的方法,也就是數據運行的瓶頸在哪里,就對哪里進行優(yōu)化。
老牛之淺談,希望能幫助到你。