oracle 關鍵內存分配調整

關鍵的內存分配

共享池:sql語句執行時變成一個指令。這個池相當於數據庫理解指令。將理解緩存起來,類似抽屜。但是如果這個抽屜很大,就相當於 很大的抽屜裏找,這很麻煩,所以不是越大越好。

緩衝區高速緩存:這個是針對已查詢出來的數據,緩存起來,如果短時間內查詢這個語句,就不用每次從硬盤裏找

Java池:java程序有兩個池,一個是加載類,本身有內存保存這個類。另外一個內存空間是放java類對應的具體的數據。

Java池指的是本身java類用的內存

大型池:目前沒有用到

PGA:分頁處理的內存塊。原理類似windows的虛擬空間,windows的虛擬空間其實是硬盤的某個小空間。

 

怎樣分配數據庫內存參數:如果電腦專門當做數據庫,2/3給數據庫 ,1/3給windows用。2/3的2/3給以上關鍵的池使用。

 

共享池:一般1G的內存就設200M比較好。即使電腦有3G內存,共享池也最多是200M,除非8G以上內存,稍微調整多一些。

Java池和大型池幾乎不動,按默認值。

緩衝區高速緩衝:這個一般會比PGA大一些。一般設512左右。

PGA; 則256左右,數字不是絕對的,大一點點,小一點點都沒關係。

還有兩個:processor opern_cursor

Processor:多少用戶在線,分配資源。如果是設的是2,假設2個用戶訪問同一個表,可同時處理。如果是1,則需要等待。一般設置300-500比較ok

 

Open_cursor 同一個鏈接,不釋放資源,再查詢,可循環多少從。設置300左右,看cpu配置,可調大的。

 

字符集設置很重要:別的可以後續修改調整,但這個不可以。一般要選擇通用的,例如能兼容繁體和簡體的。兼容性比較好的。例如UTF-8,UTF-16更加廣泛。這不容易重疊和亂碼。如果是BIG5,才2個byte。

也不是一定用UTF-16更好,因爲每一個字符佔得更大,數據的容量更多。

圖像字符集針對字符集的。

 

SYS  SYSTEM 是DBA權限,需要很好保管。

 

 

如果本機的數據庫正常,但別人不能訪問,很可能是防火牆阻止了端口。一是在控制面板的,windows防火牆裏添加oracle端口。另外是在防火牆裏添加端口。

 

歸檔日誌,如果不打鉤,則不會備份數據,如果遇到突然斷電之類的,數據可能不能回覆。

 

 

共享池,.java池,大型池都是SGA中的一部分,SGA還包括數據庫內存緩衝區(DB buffer cache),重做日誌緩衝區(redo log buffer)。

 

發佈了32 篇原創文章 · 獲贊 19 · 訪問量 11萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章