Oracle的過載保護-資料庫資源限制
自己原文公眾號: https://mp.weixin.qq.com/s/ICj9GzMLukriS9ax9qTR8w
一般來說合格的程式設計師都會在上線前對自己程式碼進行檢查,避免全表查詢或者返回大量資料。雖然簡單,同時問題也是最低階的,但是卻是常見也是最多的引起故障的原因。
在MySQL、PG的慢日誌和Oracle的AWR、甚至Redis的慢日誌中都能找到這些問題。但是很多問題就是不改也是常態。為了保護資料庫不被無節操的SQL衝擊成不可用,把問題降到最低,我們 想辦法做資料庫過載保護。
在MySQL中:透過設定MAX_QUERIES_PER_HOUR 限制每小時多少次查詢,我這裡簡單設定2,僅做展示。
這是會話級別的。
Oracle中如何做?答:概要檔案。這裡Oracle的內容比MySQL多一些。我這裡僅展示每個user一次請求能使用多少CPU。
select PROFILE,RESOURCE_NAME,RESOURCE_TYPE,LIMIT from sys.dba_profiles where PROFILE='DEFAULT';
可以看到我這裡僅分配了一個會話2個CPU和20個邏輯讀。
把這個限制賦予賬戶。
效果如上圖。直接踢出去。(誰讓你不守規矩)
以上都是會話級別,有沒有例項級別?有。
我設定了一個叫XXG的限制計劃,把這個XXG給到PDB1的這個例項。這個限制是說這個資料庫例項只能用到2%的CPU資源。
設定好CPU了,還有一個防線是IO。
我這裡設定了每秒最大20個IO資料塊和每秒最大5M的讀寫請求。
出現這些就說明IO被限制住了,隻影響PDB1的資源消耗。其他不受影響。
結論:優先、強烈、推薦設定開發規範,並且遵守開發規範(主要是實現邏輯)。在這個基礎上資料庫是穩穩地很少會出問題。就像有時候有人問,這兩個資料庫能合併嗎?怕(效能)出問題。
通常我就回答:您能遵守開發規範嗎?能就可以,不能就不可以。
交通事故死的人不會因為交通工具一次承載的人多而多。飛機也會失事,但是比起5人的小汽車來說,還是安全多了。高鐵一次16節車廂可能有2000人。但是很少出事。因為有規矩。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/637517/viewspace-2847502/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 保護Oracle資料庫的安全Oracle資料庫
- 資料庫保護資料庫
- 通過SQL Server資料庫映象保護虛擬資料庫ICSQLServer資料庫
- 保護資料庫的安全(二)資料庫
- 保護資料庫的安全(一)資料庫
- Oracle資料庫訪問限制繞過漏洞 解決Oracle資料庫
- 如何保護PostgreSQL資料庫安全? | goteleportSQL資料庫Go
- 詳解使用Role來保護Oracle資料庫的安全性Oracle資料庫
- 保護系統 用資料庫加密實現資料的安全資料庫加密
- Oracle資料庫限制訪問IPOracle資料庫
- Oracle中對使用者所能使用的資料庫資源進行限制Oracle資料庫
- 關於共享資源保護的思考
- Teradata的資料保護
- 【DataGuard】Oracle DataGuard 資料保護模式切換Oracle模式
- Oracle資料庫日常維護Oracle資料庫
- 如何限制ip訪問Oracle資料庫Oracle資料庫
- Oracle大會PPT 用Oracle Database Vault 保護你的資料OracleDatabase
- Oracle資料庫安全資源-1Oracle資料庫
- 怎樣保護資料
- oracle透過trigger來限制使用者和ip連線資料庫的限制Oracle資料庫
- Teradata的資料保護策略
- 使用開源工具WarShield保護你的檔案和資料開源工具
- 使用Hashids來保護你的資料庫主鍵資料庫
- SQL Server資料庫備份保護的關鍵UMSQLServer資料庫
- profile資源限制基礎記載
- Oracle資料庫維護的重要性Oracle資料庫
- Oracle資料庫中索引的維護 ztOracle資料庫索引
- Oracle資料庫中索引的維護(zt)Oracle資料庫索引
- Oracle資料庫中索引的維護(轉)Oracle資料庫索引
- [原創] Oracle資料庫資源管理Oracle資料庫
- 資料庫安全策略中資料保護有怎樣的功能?資料庫
- 實時資料保護(CDP)
- 淺談資料庫系統安全保護機制資料庫
- 保護雲端資料的5個技巧
- Flutter 保護你的APP資料安全FlutterAPP
- 保護資料安全的三種武器
- 自然資源領域資料安全管理新規出臺:全面加強資料保護
- 雲資料安全:SQL Azure資料保護RVSQL