這篇“l(fā)og buffer日志緩沖區(qū)問(wèn)題怎么解決”文章的知識(shí)點(diǎn)大部分人都不太理解,所以小編給大家總結(jié)了以下內(nèi)容,內(nèi)容詳細(xì),步驟清晰,具有一定的借鑒價(jià)值,希望大家閱讀完這篇文章能有所收獲,下面我們一起來(lái)看看這篇“l(fā)og buffer日志緩沖區(qū)問(wèn)題怎么解決”文章吧。
讓客戶滿意是我們工作的目標(biāo),不斷超越客戶的期望值來(lái)自于我們對(duì)這個(gè)行業(yè)的熱愛(ài)。我們立志把好的技術(shù)通過(guò)有效、簡(jiǎn)單的方式提供給客戶,將通過(guò)不懈努力成為客戶在信息化領(lǐng)域值得信任、有價(jià)值的長(zhǎng)期合作伙伴,公司提供的服務(wù)項(xiàng)目有:主機(jī)域名、虛擬主機(jī)、營(yíng)銷軟件、網(wǎng)站建設(shè)、靜寧網(wǎng)站維護(hù)、網(wǎng)站推廣。log buffer(日志緩沖區(qū))
change vector is a modification applied to something; executing DML statements
generates change vectors applied to data.
日志緩沖區(qū)是一個(gè)很小的,短期集結(jié)(change vectors)改變量的地方。
日志文件用于確保數(shù)據(jù)庫(kù)中的數(shù)據(jù)不會(huì)丟失。應(yīng)用于數(shù)據(jù)塊的(change vectors)將會(huì)寫
入日志文件中。會(huì)話產(chǎn)生日志信息到日志緩沖區(qū),日志信息是通過(guò)后臺(tái)進(jìn)程LGWR寫入日
志文件的。因?yàn)橹刈鋈罩拘畔缀鯇?shí)時(shí)的寫入重做日志文件中,所以它比一般的oracle
內(nèi)存結(jié)構(gòu)組件小。所以該緩沖區(qū)不需要很大,接受推薦的大小就可以了(基于服務(wù)器的
CPU個(gè)數(shù)的推薦值)。但是不能設(shè)置重做日志緩沖區(qū)小于默認(rèn)的值,如果這樣oracle會(huì)自
動(dòng)的設(shè)置為默認(rèn)的值。調(diào)優(yōu)的時(shí)候也是從默認(rèn)值開(kāi)始調(diào)整。日志緩沖區(qū)的大小在系統(tǒng)運(yùn)
行期間是不可調(diào)整的,除非重啟系統(tǒng)。可能在DML操作的高峰,日志信息產(chǎn)生的速度快于
LGWR的速度,這是DML操作會(huì)暫停毫秒。DML的操作速度不可能快過(guò)LGWR寫重做日志的速度
(The process of flushing the log buffer to disk is one of the ultimate
bottlenecks in the Oracle architecture.)
If redo generation is the limiting factor in a database’s performance, the only
option is to go to RAC. In a RAC database, each instance has its own log buffer,
and its own LGWR. This is the only way to parallelize writing redo data to disk.
The size of the log buffer is static, fixed at instance startup. It cannot be
automatically managed.
查看日志緩沖區(qū)大小
SQL> show parameter log_buffer;
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
log_buffer integer 5603328
注:觸發(fā)LGWR寫日志緩沖區(qū)的條件是:
一個(gè)會(huì)話執(zhí)行了commit。
日志信息達(dá)到了日志緩沖區(qū)大小的三分之一,或者日志信息達(dá)到1mb。
DBWR打算寫數(shù)據(jù)緩沖區(qū)中的臟數(shù)據(jù)(沒(méi)有commit的數(shù)據(jù))。
SQL> alter system set log_buffer=5m scope=spfile;
alter system set log_buffer=5m scope=spfile
ORA-02095: 無(wú)法修改指定的初始化參數(shù)
log_buffer是不能動(dòng)態(tài)調(diào)整的。最簡(jiǎn)單的方法就是在init.ora文件中添加一句 "log_buffer=value"。
然后用這個(gè)init.ora重啟Oracle(SQL>startup pfile=init.ora)
以上就是關(guān)于“l(fā)og buffer日志緩沖區(qū)問(wèn)題怎么解決”這篇文章的內(nèi)容,相信大家都有了一定的了解,希望小編分享的內(nèi)容對(duì)大家有幫助,若想了解更多相關(guān)的知識(shí)內(nèi)容,請(qǐng)關(guān)注創(chuàng)新互聯(lián)-成都網(wǎng)站建設(shè)公司行業(yè)資訊頻道。