zoukankan      html  css  js  c++  java
  • 关于bleand2000下面oracle服务器优化

    这是数据库参数:
    SQL> select * from v$sgastat;

    POOL        NAME                            BYTES
    ----------- -------------------------- ----------
                fixed_sga                      730200
                buffer_cache                 33554432
                log_buffer                     787456
    shared pool errors                          40048
    shared pool subheap                        102840
    shared pool KGK heap                         7000
    shared pool KQR L PO                      1462312
    shared pool KQR M PO                       548568
    shared pool KQR S SO                         5120
    shared pool sessions                       459680
    shared pool sql area                     44003392

    POOL        NAME                            BYTES
    ----------- -------------------------- ----------
    shared pool 1M buffer                     2098176
    shared pool KGLS heap                     2327608
    shared pool parameters                       4256
    shared pool free memory                  29512112
    shared pool PL/SQL DIANA                   748832
    shared pool FileOpenBlock                 1191104
    shared pool PL/SQL MPCODE                  346864
    shared pool library cache                11524536
    shared pool miscellaneous                 6909032
    shared pool MTTR advisory                   18160
    shared pool PLS non-lib hp                   3112

    POOL        NAME                            BYTES
    ----------- -------------------------- ----------
    shared pool XDB Schema Cac                5313768
    shared pool joxs heap init                   4240
    shared pool kgl simulator                 1559976
    shared pool sim memory hea                 133200
    shared pool table definiti                   6752
    shared pool trigger defini                  14672
    shared pool trigger inform                   1640
    shared pool trigger source                    488
    shared pool type object de                 101200
    shared pool Checkpoint queue               513280
    shared pool VIRTUAL CIRCUITS               349120

    POOL        NAME                            BYTES
    ----------- -------------------------- ----------
    shared pool dictionary cache              3221760
    shared pool KSXR receive buffers          1034000
    shared pool FileIdentificatonBlock         349824
    shared pool message pool freequeue         940944
    shared pool KSXR pending messages que      853952
    shared pool event statistics per sess     1728560
    shared pool fixed allocation callback         384
    large pool  free memory                  33336256
    large pool  session heap                   234240
    java pool   free memory                 117440512

    已选择43行。

    找到的文章:
       

    如何动态扩大oracle 9i  SGA区中的内存空间?

    Oracle 9i 具有动态SGA的功能,用操作系统命令查看系统内存时,发现系统中还有空闲内存. 但为什么有时使用oracle 9i

    sql > alter system set db_cache_size=xxxxM

    命令时数据库会报告错 -- 没有足够的内存. 这是由操作系统引起的吗?

     

    不是,原因在于此时SGA区中没有多余空闲内存。尽管系统中有空闲内存,但未分配给SGA 区。

    oracle 9i 动态SGA的概念是无需经过 关闭实例(instance, 修改初始化参数文件和重启实例这一过程,就可动态调整 buffer cache share pool 的大小。 另外,动态SGA允许在实例运行时设置,下次启动时将有多少物理内存分配给SGA 这一数据库参数。 SGA 可用最大物理内存是由SGA_MAX_SIZE 参数来决定的。

    在启动实例时,大小为SGA_MAX_SIZE 的内存就分配给了SGASGA成员(buffer cache, share pool等)根据参数值也会获得相应的内存。

    实例启动后SGA的各成员所用内存之和可以小于SGA_MAX_SIZE  数据库管理员通过使用 alter system 命令来调整SGA成员间的内存分配。 SGA中有足够多的空闲内存时,增大share pool buffer cache 才能完成,否则会报内存不足。   

    另外Share pool buffer cache 的尺寸也可动态缩小。 当实例已启动,SGA已达到 SGA_MAX_SIZE值,可通过先减少某一成员的内存,再增加另一成员的内存来完成。

    SGA成员间是相互独立的,在成员间分配内存时,其和一定不能大于 SGA_MAX_SIZE 并且db_cache_size 参数不能等于0

     

    OLAPOLTP混合型的应用环境中,利用动态SGA的功能,可以根据不同时刻应用的优先级,来动态的调整buffer cache share pool 的尺寸,以提高系统的性能

    a. OLTP 应用 优先级高时,缩小 buffer cache 的值,增大 share pool 的值;

    b. OLAP 应用优先级高时,缩小 share pool 的值,增大buffer cache 的值。

     

    例如:

    1.    增大buffer cache 尺寸

    SQL> show parameter db_cache_size;      显示当前 buffer chache 的大小

    NAME                       TYPE                    VALUE

    --------------------------          -----------                -----------------

    db_cache_size                big integer                 4194304

    SQL> alter system set db_cache_size=8M;    增大buffer cache 8MB

    System altered.

    SQL> show parameter db_cache_size;

    NAME                       TYPE                    VALUE

    --------------------------           -----------                -----------------

    db_cache_size                big integer                  8388608

     

    2.   调整参数 SGA_MAX_SIZE  (需重启实例)

    SQL> alter system set SGA_MAX_SIZE= 1000M scope=spfile;

    System altered. 

     

    3.  增大shared_pool_size 尺寸

      假设,初始参数值为:

             SGA_MAX_SIZE=128M

             DB_CACHE_SIZE=88M

             SHARED_POOL_SIZE=32M

     

     SQL>ALTER SYSTEM SET SHARED_POOL_SIZE=64M;  设置share_pool 的内存为64M

        Error  ORA-04033,  insufficient memory

     

     SQL>ALTER SYSTEM SET DB_CACHE_SIZE=56M;  减少buffer cache 的大小

     SQL>ALTER SYSTEM SET SHARED_POOL_SIZE=64M;

      Error  ORA-04033,  insufficient memory

    需要等 buffer cache 释放完,才可扩大 share pool 的大小

     

     SQL> select * from v$buffer_pool ;  检查内存释放是否完成。

     

     SQL>ALTER SYSTEM SET SHARED_POOL_SIZE=64M;

          System altered.

    自改配置:
    /etc/system文件,shminfo_shmmax=1.5G
    shared_pool_size=200M
    OPEN_CURSORS=200
    CURSOR_SPACE_FOR_TIME=TRUE
    SESSION_CACHED_CURSORS=100
    CURSOR_SHARING= SIMILAR
    db_cache_advice=READY
    db_cache_size=600M
    large_pool_size=32M
    java_pool_size=60M
    log_buffer=3M
    sql_trace=FALSE
    timed_statistics=true
    db_file_multiblock_read_count=16
    dbwr_io_slaves=0
    db_writer_processes=2
    sort_area_size=2M
    sort_area_retained_size=0.5M
    undo_management= AUTO
    undo_retention = 7200

  • 相关阅读:
    win10下Anaconda3在虚拟环境python_version=3.5.3 中配置pyspark
    在Pycharm上编写WordCount程序
    ASP.NET Core读取AppSettings
    如何高逼格读取Web.config中的AppSettings
    C# 防止同时调用=========使用读写锁三行代码简单解决多线程并发的问题
    C#double转化成字符串 保留小数位数, 不以科学计数法的形式出现。
    Sql Server 里的向上取整、向下取整、四舍五入取整的实例!
    ECMAscript5 新增数组内函数
    js 严格模式
    js中数组去重
  • 原文地址:https://www.cnblogs.com/mohai/p/295570.html
Copyright © 2011-2022 走看看