關於糾結的recycle pool的設定
現在生產環境中目前有一個很大的中繼表,作為多個流程的資料流動所用,資料量很大。裡面有clob欄位,加上龐大的資料量,表就顯得很臃腫了。
目前在做大批次的資料處理的時候發現了一些問題,事物數在不斷增加的情況下,資料的處理速度也在不斷的降低。最後出現了一些資源的問題。
在抓取了awr和同事的分析之後,產品部門建議把對應的clob放入recycle pool裡面。一方面能夠降低buffer cache的負載。讓clob的部分儘快的從快取中不斷的重新整理。
對於recycle pool的設定沒有問題,可以設定db_recycle_cache_size來實現,但是這些操作在生產環境中一定要多評估和分析,因為有一些潛在的問題和風險。
首先就是來看sga中是否有足夠的空間,因為這個庫在開始的時候沒有考慮recycle,keep pool的設定,根據很多的專案的反饋,目前用處還不是很大,所以就沒有分配足夠的空間,sga絕大部分都給了shared pool, buffer_cache,其他的pool都相應的分配了較少的一部分快取。
這樣如果要分配足夠快取,留給recycle pool的部分就很有限了。估算下來,不到200M左右的樣子,直觀感覺,這樣的設定還不如不設定,可能沒達到預期的目標還可能使問題更加嚴重。
第2個思路就是從sga的其他池中拿出一部分的快取來,分配給recycle pool,這個思路也是很自然的。或者考慮設定sga_target來調高實現,不過這個部分,自己還是有陰影的。
一條sql語句導致的資料庫當機問題及分析 http://blog.itpub.net/23718752/viewspace-1141131/
所以我是不敢自己往槍口上撞的。
還有一個思路就是根據系統的資源情況來分配更多的sga資源,可以調高sga_max_size,這個部分需要重啟資料庫例項。如果調高的幅度較大,還需要看看核心引數是否有潛在的影響,是否也需要相應的調高。
這個部分還是有影響的。
伺服器增加記憶體後無法重啟資料庫的問題及解決 http://blog.itpub.net/23718752/viewspace-1137256/
考慮瞭如上的一些情況,就給產品部門去了封郵件,讓他們來幫助評估一下設定的recycle pool最小或者建議值是多少,我來根據這個引數來考慮使用哪種方法。因為產品部門這方面要更專業一些。
自己琢磨了半天,最後的結果也不一定就是最優的。
過了一會,產品部門回郵件了,綜合了我的顧慮,他們認為這部分的修改可以稍微延後一些,影響不是特別大,至少從目前的評估來看,不過從長遠的情況來看他們建議還是需要這個變更。建議值為500M。
有了這些思路,我檢視了這兩天的系統負載。資料庫負載時相當的高。如果做了以上的變更,可能得不償失。所以就先把這部分的變更做了更為詳細的實現步驟,在測試環境測試之後才能提交給客戶。
最後的結果就是下面的步驟。
1.
Alter system set sga_max_size=20G scope=spfile;
Alter system set db_recycle_cache_size=2G scope=spfile;
2.
Bring down DB instance
Restart DB instance.
3.
Run below sql statement under PRDAPPO.
alter table trb1_pub_log modify lob(GENERAL_DATA_C) (storage (buffer_pool recycle) cache);
4.
and use below statement to check if recycle setting is properly, column buffer_pool value should be RECYCLE.
set linesize 200
col table_name format a30
col column_name format a30
col segment_name format a30
col buffer_pool format a20
set pages 50
select table_name,column_name,se.segment_name,buffer_pool from user_segments se,user_lobs sl
where se.segment_name=sl.segment_name
and sl.table_name='TRB1_PUB_LOG';
example like below.
TABLE_NAME COLUMN_NAME SEGMENT_NAME BUFFER_POOL
------------------------------ ------------------------------ ------------------------------ --------------------
PUB_LOG GENERAL_DATA_C SYS_LOB0002403829C00014$$ RECYCLE
PUB_LOG GENERAL_DATA_C SYS_LOB0002403829C00014$$ RECYCLE
PUB_LOG GENERAL_DATA_C SYS_LOB0002403829C00014$$ RECYCLE
PUB_LOG GENERAL_DATA_C SYS_LOB0002403829C00014$$ RECYCLE
PUB_LOG GENERAL_DATA_C SYS_LOB0002403829C00014$$ RECYCLE
PUB_LOG GENERAL_DATA_C SYS_LOB0002403829C00014$$ RECYCLE
PUB_LOG GENERAL_DATA_C SYS_LOB0002403829C00014$$ RECYCLE
PUB_LOG GENERAL_DATA_C SYS_LOB0002403829C00014$$ RECYCLE
PUB_LOG GENERAL_DATA_C SYS_LOB0002403829C00014$$ RECYCLE
PUB_LOG GENERAL_DATA_C SYS_LOB0002403829C00014$$ RECYCLE
PUB_LOG GENERAL_DATA_C SYS_LOB0002403829C00014$$ RECYCLE
PUB_LOG GENERAL_DATA_C SYS_LOB0002403829C00014$$ RECYCLE
PUB_LOG GENERAL_DATA_C SYS_LOB0002403829C00014$$ RECYCLE
PUB_LOG GENERAL_DATA_C SYS_LOB0002403829C00014$$ RECYCLE
PUB_LOG GENERAL_DATA_C SYS_LOB0002403829C00014$$ RECYCLE
PUB_LOG GENERAL_DATA_C SYS_LOB0002403829C00014$$ RECYCLE
PUB_LOG GENERAL_DATA_C SYS_LOB0002403829C00014$$ RECYCLE
PUB_LOG GENERAL_DATA_C SYS_LOB0002403829C00014$$ RECYCLE
18 rows selected.
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/25462274/viewspace-1960802/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Oracle 的 KEEP pool, RECYCLE pool和DEFAULT poolOracle
- 分割槽表放入keep pool,recycle pool的問題及解析
- 關於BUFFER POOL的一些總結
- 關於join查詢的那麼點糾結
- 關於SGA設定的一點總結
- 關於locale的設定
- 關於aio的設定的討論AI
- 關於jive的設定問題
- postman關於斷言的設定Postman
- css中關於table的相關設定CSS
- 關於遊戲中“設定介面”的思考遊戲
- 關於移動端rem的設定REM
- 關於Linux許可權設定的一點小總結Linux
- 關於量子技術的一些概念糾正
- 關於MySQL極限值的初步驗證糾錯(二)MySql
- 關於ERP系統,模切企業別糾結了
- 變數命名的糾結變數
- OkHttp關於https請求的設定HTTP
- 關於PHP.ini檔案的設定PHP
- 關於文字特性的一些設定
- 關於sort/hash區域大小的設定
- 關於listener.ora中的HOST設定
- Linux-關於locale的設定(轉)Linux
- HTML頁面關於高分屏的設定HTML
- 關於 RESTful API 設計的總結RESTAPI
- 關於JBuilder7.0的jdk1.4的設定UIJDK
- 理清JS中等於(==)和全等(===)那些糾纏不清的關係JS
- 設定RECYCLE池快取一致性塊快取
- 很多人比較糾結的約束和索引的關係索引
- [BUG反饋]關於設定選單的BUG
- 關於環境變數設定的問題變數
- 請教關於jive版主設定的問題。
- 關於控制檯編碼的設定問題
- 關於PB列印設定中紙張的大小
- 糾結的連等賦值賦值
- 關於MySQL中的一些極限值的初步驗證糾錯MySql
- MySQL 關於Table cache設定MySql
- SHARED_POOL_RESERVED_SIZE引數的設定及作用