Oracle 隱藏參數:_undo_autotune、一個吃力不討好的活

來源:互聯網
上載者:User
      雖然談論那些隱藏的參數必定是無意義的、但那些隱藏的參數卻是有價值的、我們不得不對那些隱藏的參數"心懷敬意"
      
      
      AUM下、為什麼我的Undo資料表空間只增長,不回收,現在都40多G了,還在長,是為什麼啊?
      為什麼在系統不是很繁忙的時候會出現undo不夠用的情況呢,如果說不夠用,那在波峰時段應該問題更加嚴重才對?
      ......
      有時候DBA會聽到諸如上面的一些聲音
      

      因為有個參數叫_undo_autotune=true,undo_retention不再適用

      Oracle會自行決定tuned_undo_retention,然後試圖增大undo tablespace

      從10.2版本開始,oracle預設採用自動調整undo retention的方法

      根據你undo tablespace的大小以及系統的繁忙程度(v$undostat中資訊)自動調整undo_retention參數

      所以在10g的資料庫上你會經常發現undo tablespace永遠是滿的

      因為當你undo tablespace有空閑空間時,系統自動調大undo_retention來保留更多的undo blocks

      這一方法有利於時間長的查詢,但是對於典型的OLTP系統來說不太適用

      因為OLTP上不太可能跑如此長時間的查詢,而且在很繁忙的 OLTP上還會導致上面所遇到的問題

      

      Oracle真是吃力不討好

sys@ORCL> edWrote file afiedt.buf  1  select a.ksppinm name,b.ksppstvl value,a.ksppdesc description  2    from x$ksppi a,x$ksppcv b  3   where a.indx = b.indx  4*        and a.ksppinm like '%_undo_autotune%'  sys@ORCL> /NAME                 VALUE    DESCRIPTION-------------------- -------- ----------------------------------------_undo_autotune       TRUE     enable auto tuning of undo_retention

      該參數可以線上修改:

  alter system set “_undo_autotune” = false;  

      標註一下:
      如果undo不回收、resize可能是會報錯的、我遇到很多次了、一般都是、重建個undo資料表空間、然後切換過去、把以前的幹掉、通過這種方式來回收空間

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.