瘋狂

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

          Oracle PGA

          Posted on 2011-08-18 11:55 瘋狂 閱讀(2108) 評論(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">

          主站蜘蛛池模板: 楚雄市| 通州市| 祥云县| 柏乡县| 同江市| 疏勒县| 余庆县| 廉江市| 中卫市| 栾城县| 焉耆| 芜湖县| 九江县| 安阳市| 响水县| 乌拉特中旗| 乐至县| 雷波县| 古交市| 永德县| 万安县| 噶尔县| 察隅县| 晋州市| 凤台县| 广丰县| 汽车| 河东区| 林口县| 三原县| 乌兰察布市| 泰州市| 德兴市| 同江市| 白城市| 叶城县| 德格县| 定远县| 出国| 揭阳市| 龙岩市|