資料庫管理-第123期 Oracle相關兩個引數(202301205)
資料庫管理-第123期 Oracle相關兩個引數(202301205)
最近在群聊中看到倆和Oracle資料庫相關的倆引數,一個是Oracle資料庫本身的,一個是來自於Weblogic的,挺有趣的,本期研究一下。(本期涉及引數講解均以Oracle DB 19c或WLS 12.2.1.4.0為準)
1 db_flash_cache_file/db_flash_cache_size
乍眼一看,還以為和閃回有關,但是細看發現是flash cache,檢視Oracle Database 19c-Database Concepts-Memory Architecture部分官方文件,這個一個是否開啟並配置Flash Cache功能的引數。Flash Cache的體系結構大致如下:
啟動Flash Cache(或叫Smart Flash Cache,智慧快閃記憶體快取)的目的與記憶體buffer cache一致,將經常訪問的資料塊放到快取裡,這裡將這部分緩衝區快取可以位於快閃記憶體中。此緩衝區快取擴充套件儲存在一個或多個快閃記憶體磁碟裝置上,這些裝置是使用快閃記憶體的固態儲存裝置。資料庫可以透過在快閃記憶體中快取緩衝區而不是從磁碟讀取來提高效能。(這裡需要注意的是,該功能只能在Solaris或Oracle Linux上開啟)
當Flash cache開啟時,DBW可以將一個clean buffer寫入快閃記憶體快取,從而實現其記憶體buffer的重用。資料庫將buffer頭儲存在主儲存器的LRU列表中,以跟蹤快閃記憶體中buffer的狀態和位置。如果以後需要這個buffer,那麼資料庫可以從快閃記憶體中讀取,而不是從磁碟中讀取。
該功能本質是對記憶體buffer cache的一種容量擴充套件或者磁碟熱資料的升級,使用Flash cache中快取的buffer仍然需要將對應buffer刷入記憶體中使用,但是可以透過Flash Card的高效能實現IO層面的加速。
關於Flash Cache的兩個引數使用方式如下:
DB_FLASH_CACHE_FILE指定用於資料庫智慧快閃記憶體的快閃記憶體記憶體或表示快閃記憶體集合的磁碟組的檔名。最多可以配置16個檔名。
DB_FLASH_CACHE_SIZE指定資料庫智慧快閃記憶體的大小。此引數只能在例項啟動時指定。與上面引數內容一一對應,最多16個。大小限制為0(不啟用),16M至(2048G-塊大小)。
db_flash_cache_file = /dev/raw/sda, /dev/raw/sdb, /dev/raw/sdc db_flash_cache_size = 32G, 32G, 64G db_flash_cache_size = 32G, 0, 64G
Flash Cache這個引數我是沒有用過的,感覺在RAC上意義也不是太大,而我這大多數又在Exadata上。
2 Statement Cache
Statement Cache是Weblogic Server(WLS)中用於自帶JDBC連線池的一個配置引數:
To improve performance, WebLogic Server can cache prepared and callable statements used in your applications (enabled by default). When an application or EJB calls any of the statements stored in the cache, WebLogic Server reuses the statement stored in the cache. Each database connection in a data source has it’s own statement cache.
為了提高效能,WebLogic Server可以快取應用程式中使用的準備好的和可呼叫的語句(預設情況下啟用)。當應用程式或EJB呼叫儲存在快取中的任何語句時,WebLogic Server會重用儲存在快取內的語句。資料來源中的每個資料庫連線都有自己的語句快取。
在Configuration: Connect Pool的配置中Statement Cache Type可以指定使用LRU或Fixed方式來選擇快取的語句,而Statement Cache Size則指定每個資料來源例項的每個連線要快取的語句數。
僅僅透過官方文件,我們很容易將Statement Cache理解成WLS中介軟體層快取資料,然而在MOS文件**What does Statement Cache Size mean? (Doc ID 1298036.1)**中,對Statement Cache如何發揮作用有更加全面、深入的解釋:
從MOS文件可以看到Statement Cache本質上還是在資料庫層面透過遊標來維持對應語句處於open狀態,在下一次執行語句時可以直接執行。這個功能並沒有將語句的任何資訊快取在WLS中。同時開啟該功能,配置不合理還可能出現遊標耗盡,OOM等問題。
總結
本期介紹了Oracle DB和WLS中兩個比較有趣的配置引數。
老規矩,知道寫了些啥。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31466763/viewspace-2998816/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- oracle 資料庫兩種引數檔案Oracle資料庫
- 【PG管理】postgresql資料庫管理相關SQL資料庫
- oracle兩個 retention 引數Oracle
- 聊聊Oracle Optimizer相關的幾個引數(中)Oracle
- 聊聊Oracle Optimizer相關的幾個引數(下)Oracle
- Oracle undo保留時間的幾個相關引數Oracle
- oracle 身份認證相關引數Oracle
- Oracle 資料庫引數調整Oracle資料庫
- Linux 核心引數 和 Oracle相關引數調整LinuxOracle
- Linux 核心引數及Oracle相關引數調整LinuxOracle
- 【Oracle】-【sqlplus相關】-serveroutput引數OracleSQLServer
- oracle 安裝相關引數設定Oracle
- oracle相關的linux核心引數OracleLinux
- 資料庫相關資料庫
- (轉)Linux 核心引數及Oracle相關引數調整LinuxOracle
- Oracle 11g資料庫相關操作Oracle資料庫
- 【MYSQL】兩階段提交及相關引數介紹MySql
- 資料庫管理-第221期 Oracle的高可用-04(20240717)資料庫Oracle
- Oracle安裝相關Linux引數(轉)OracleLinux
- 【轉】Oracle安裝相關Linux引數OracleLinux
- oracle sga配置相關的os 核心引數Oracle
- 資料庫管理-第143期 Oracle DB 19c需要調整的基本引數V2(20240202)資料庫Oracle
- 關於資料庫標識類引數資料庫
- Oracle資料庫系統中的引數Oracle資料庫
- Oracle資料庫中的系統引數Oracle資料庫
- 調節Oracle資料緩衝區引數,緩衝整個資料庫(轉)Oracle資料庫
- oracle資料庫網路相關的若干概念Oracle資料庫
- Oracle11g 自動化建庫及調整相關引數Oracle
- Oracle direct path read相關隱含引數Oracle
- Oracle的AMM和ASMM以及相關引數探究OracleASM
- Oracle查詢優化器的相關引數Oracle優化
- Oracle優化相關的一些引數Oracle優化
- 關於修改資料庫引數的測試資料庫
- 管理叢集資料庫的兩個使用者與兩個命令資料庫
- MySQL效能相關引數MySql
- 歸檔相關引數
- PostgreSQL AutoVacuum 相關引數SQL
- 關於 oracle 設定引數時,scope型別為memory,重啟資料庫後引數失效Oracle型別資料庫