瘋狂

          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">

          主站蜘蛛池模板: 武强县| 新田县| 库尔勒市| 阿尔山市| 枣庄市| 鹰潭市| 南郑县| 万源市| 博客| 青田县| 依兰县| 三河市| 图们市| 玉环县| 满洲里市| 东山县| 南安市| 林芝县| 吉安县| 精河县| 新宁县| 中超| 竹溪县| 界首市| 皮山县| 巴南区| 玉龙| 木兰县| 徐闻县| 泰来县| 封丘县| 铁岭市| 丹江口市| 攀枝花市| 通州区| 宽甸| 福安市| 岳西县| 赣榆县| 象州县| 卫辉市|