oracle小知識點15--result cache結果快取記憶體
oracle 11g新加入了結果快取特性,包括伺服器結果快取記憶體和客戶機快取記憶體.伺服器結果快取記憶體又包括sql查詢結果快取記憶體和pl/sql函式結果快取記憶體.它適合資料庫查詢頻繁執行並且查詢依賴的表資料變化頻率很低的情況.
以下是一些result_cache的說明:
sql中透過/*+ result_cache*/提示實現result cache,pl/sql函式透過建函式時的result_cache子句實現.使用result cache的sql在執行計劃上會有result cache運算子.
dbms_result_cache包,可以監視和管理result cache.
例如:dbms_result_cache.flush:清除result cache.
dbms_result_cache.invalidate(owner,name):使某物件的result cache無效.
dbms_result_cache.status:顯示result cache的狀態.
dbms_result_cache.memory_report:顯示result cache的記憶體使用狀況.
v$result_cache_*檢視,是和result cache存相關.
例如:
v$result_cache_statistics:顯示result cache的設定和統計資料.
v$result_cache_objects:顯示result cache中的物件和物件狀態.
v$result_cache_memory:顯示result cache的記憶體統計資料.
資料庫引數:
result_cache_mode:預設manual,只能在sql中透過/*+ result_cache*/提示實現result cache.auto根據執行頻率,執行成本和物件的變化頻率等因素等自動result cache.force只要result cache合理,會快取所有查詢結果.
result_cache_max_size:result cache是SGA share pool的一部分,由引數result_cache_max_size控制其大小,預設memory_target的0.25%或者sga_target的0.5%或者shared_pool_size的1%,但最大不能超過share pool的75%.
result_cache_max_reslut:預設5,即5%,單條sql查詢結果最大佔用result_cache_max_size的比例.
result_cache_remote_expiration:預設0.指定遠端資料庫中查詢結果涉及的表保證多久不變的時間,此引數一般只適合用於只讀的表或週期性更改的表,否則會影響本地庫呼叫時的正確性.
以下是一些result_cache的說明:
sql中透過/*+ result_cache*/提示實現result cache,pl/sql函式透過建函式時的result_cache子句實現.使用result cache的sql在執行計劃上會有result cache運算子.
dbms_result_cache包,可以監視和管理result cache.
例如:dbms_result_cache.flush:清除result cache.
dbms_result_cache.invalidate(owner,name):使某物件的result cache無效.
dbms_result_cache.status:顯示result cache的狀態.
dbms_result_cache.memory_report:顯示result cache的記憶體使用狀況.
v$result_cache_*檢視,是和result cache存相關.
例如:
v$result_cache_statistics:顯示result cache的設定和統計資料.
v$result_cache_objects:顯示result cache中的物件和物件狀態.
v$result_cache_memory:顯示result cache的記憶體統計資料.
資料庫引數:
result_cache_mode:預設manual,只能在sql中透過/*+ result_cache*/提示實現result cache.auto根據執行頻率,執行成本和物件的變化頻率等因素等自動result cache.force只要result cache合理,會快取所有查詢結果.
result_cache_max_size:result cache是SGA share pool的一部分,由引數result_cache_max_size控制其大小,預設memory_target的0.25%或者sga_target的0.5%或者shared_pool_size的1%,但最大不能超過share pool的75%.
result_cache_max_reslut:預設5,即5%,單條sql查詢結果最大佔用result_cache_max_size的比例.
result_cache_remote_expiration:預設0.指定遠端資料庫中查詢結果涉及的表保證多久不變的時間,此引數一般只適合用於只讀的表或週期性更改的表,否則會影響本地庫呼叫時的正確性.
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/28539951/viewspace-1978492/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 11g result cache 結果快取記憶體快取記憶體
- oracle result cache 結果集快取的使用Oracle快取
- Oracle 11g 的server結果快取result_cache_modeOracleServer快取
- Oracle中Buffer Cache記憶體結構Oracle記憶體
- oracle事務知識點小結Oracle
- oracle cache快取Oracle快取
- CPU快取記憶體快取記憶體
- Oracle知識小記Oracle
- Hibernate【快取】知識要點快取
- 調整緩衝區快取記憶體(Buffer Cache)的效能(轉)快取記憶體
- 調整緩衝區快取記憶體(Buffer Cache)的效能(1)快取記憶體
- 調整緩衝區快取記憶體(Buffer Cache)的效能(2)快取記憶體
- 調整緩衝區快取記憶體(Buffer Cache)的效能(3)快取記憶體
- 【JAVA】- 知識點小結Java
- promise知識點小結Promise
- HTTP知識點小結HTTP
- makefile 知識點小結
- Oracle Exadata與SGA快取記憶體CQOracle快取記憶體
- Oracle調整緩衝區快取記憶體Oracle快取記憶體
- ElasticSearch知識點小記Elasticsearch
- Glide - 記憶體快取與磁碟快取IDE記憶體快取
- DDD 和 記憶體快取記憶體快取
- 記憶體快取選型記憶體快取
- 多核cpu、cpu快取記憶體、快取一致性協議、快取行、記憶體快取記憶體協議
- Buffer Cache的記憶體結構記憶體
- Android記憶體優化之記憶體快取Android記憶體優化快取
- 記憶體資料庫快取介紹總結記憶體資料庫快取
- Oracle10g data buffer cache的記憶體結構Oracle記憶體
- node知識點小結(一)
- shell知識點小結2
- awk知識點小結1
- shell知識點小結1
- 記錄的小知識點
- golang小知識點記錄Golang
- docker部署redis快取記憶體DockerRedis快取記憶體
- 談談CPU快取記憶體快取記憶體
- CPU快取和記憶體屏障快取記憶體
- django 快取表格到記憶體Django快取記憶體