瘋狂

          STANDING ON THE SHOULDERS OF GIANTS
          posts - 481, comments - 486, trackbacks - 0, articles - 1
            BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理

          Oracle PGA

          Posted on 2011-08-18 11:55 瘋狂 閱讀(2111) 評論(0)  編輯  收藏 所屬分類: database

          PGA(Process Global Area),是server process一段私有內存區,它包含有全局變量,數據結構和一些控制信息。在Oracle8i 中,PGA調整非常復雜,要調整SORT_AREA_SIZE、HASH_AREA_SIZE、BITMAP_MERGE_AREA_SIZE、 CREATE_BITMAP_AREA_SIZE等參數。在ORACLE9I以后,只需要調整 PGA_AGGREGATE_TARGET。
          每個用戶連接到Oracle,都會占用一定的內存,當然,用戶一般連上之后還會做一些操作,比如一般的查詢,有排序操作的查詢,或用到Hash連接的查詢。這些都需要內存,而這些內存(還有一些其他的,這里就不說了。)加起來就是PGA的大小了。如果PGA設置的過小,會導致Oracle頻繁同磁盤進行交換,性能將會受到很大影響。

          3.3.1 查看PGA
          通過下面的命令來查看SGA:
          show parameter pga;

          結果如下圖:
            PGA" alt="Oracle PGA" src="http://s4.sinaimg.cn/bmiddle/5421dfd2t770c95093323&690">
          pga_aggregate_target的值就是PGA的大小,從上圖可以看出pga_aggregate_target的大小是200M。

          3.3.2 修改PGA
          通過下面的命令可以修改共享池內存的大小:
          alter system set pga_aggregate_target=90M scope=both;

           PGA" alt="Oracle PGA" src="http://s11.sinaimg.cn/bmiddle/5421dfd2t770c95bae1da&690" real_src="http://s11.sinaimg.cn/bmiddle/5421dfd2t770c95bae1da&690">

          pga_aggregate_target是一個動態參數,可以在運行時修改,因此這里的scope設置為both,新的內存大小馬上生效,并且還將修改保存在Oracle的啟動文件里。

          3.3.3 查看PGA命中率
          可以通過下面的命令查看命中率:
          SELECT a.VALUE "看命中率咯"
            FROM V$PGASTAT a
            where a.NAME = 'cache hit percentage';

          結果如下:

          PGA" alt="Oracle PGA" src="http://s13.sinaimg.cn/bmiddle/5421dfd2t770c96f22a7c&690" real_src="http://s13.sinaimg.cn/bmiddle/5421dfd2t770c96f22a7c&690">

          主站蜘蛛池模板: 桐梓县| 桐柏县| 宝鸡市| 鸡泽县| 乌拉特后旗| 共和县| 如东县| 佛山市| 东源县| 甘泉县| 宁晋县| 灌云县| 凉山| 凤山市| 集安市| 吉林市| 岢岚县| 千阳县| 安塞县| 察隅县| 韶山市| 福安市| 湛江市| 双鸭山市| 沁水县| 桃江县| 彰武县| 华亭县| 汝阳县| 玉田县| 舞钢市| 措美县| 苏尼特左旗| 雷山县| 松原市| 南乐县| 托克逊县| 石首市| 崇义县| 永嘉县| 社旗县|