• Oracle调整内存参后报ORA-00844和ORA-00851


    数据库服务器内存由16G增加为64G,为充分利用内存资源,对Oracle内存参数做了如下调整:

    SQL>alter system set sga_max_size=40960M scope=spfile;
    SQL>alter system set sga_target=40960M scope=spfile;
    SQL>alter system set pga_aggregate_target=10240M scope=spfile;

    在重启数据库时出现如下报错:

    SQL> shutdown immediate
    数据库已经关闭。
    已经卸载数据库。
    ORACLE 例程已经关闭。
    SQL> startup
    ORA-00844: Parameter not taking MEMORY_TARGET into account
    ORA-00851: SGA_MAX_SIZE 42949672960 cannot be set to more than MEMORY_TARGET 6979321856.

    该问题是由于memory_target小于sga_max_size导致的,通常memory_target值需为sga+pga内存的和,因此需将memory_target值调大。

    先备用的pfile启动Oracle,重新创建spfile,并重启数据库。

    C:UsersAdministrator>sqlplus / as sysdba
    
    SQL*Plus: Release 11.2.0.4.0 Production on 星期日 11月 11 17:22:34 2018
    
    Copyright (c) 1982, 2013, Oracle.  All rights reserved.
    
    已连接到空闲例程。
    
    SQL> startup pfile='E:appadminorclpfileinit.ora.7312017152243'
    ORACLE 例程已经启动。
    
    Total System Global Area 6847938560 bytes
    Fixed Size                  2294256 bytes
    Variable Size            3657436688 bytes
    Database Buffers         3170893824 bytes
    Redo Buffers               17313792 bytes
    数据库装载完毕。
    数据库已经打开。
    SQL> create spfile from pfile='E:appadminorclpfileinit.ora.7312017152243';
    
    文件已创建。
    
    SQL> shutdown immediate
    数据库已经关闭。
    已经卸载数据库。
    ORACLE 例程已经关闭。
    SQL> startup
    ORACLE 例程已经启动。

    之后重新修改内存参数值,并重启数据库即可

    SQL>alter system set memory_target = 52430m scope = spfile;
    SQL>alter system set sga_max_size=40960M scope=spfile;
    SQL>alter system set sga_target=40960M scope=spfile;
    SQL>alter system set pga_aggregate_target=10240M scope=spfile;

    SQL> shutdown immediate
    数据库已经关闭。
    已经卸载数据库。
    ORACLE 例程已经关闭。
    SQL> startup
    ORACLE 例程已经启动。

    Total System Global Area 4.2758E+10 bytes
    Fixed Size 2290648 bytes
    Variable Size 3221228584 bytes
    Database Buffers 3.9460E+10 bytes
    Redo Buffers 74391552 bytes
    数据库装载完毕。
    数据库已经打开。
    SQL>
    SQL> show parameter sga

    NAME TYPE VALUE
    ------------------------------------ ----------- ------------------------------
    lock_sga boolean FALSE
    pre_page_sga boolean FALSE
    sga_max_size big integer 40G
    sga_target big integer 40G
    SQL> show parameter pga

    NAME TYPE VALUE
    ------------------------------------ ----------- ------------------------------
    pga_aggregate_target big integer 10G

    OK

  • 相关阅读:
    Go语言环境配置 Sublime Text + GoSublime+ gocode + MarGo组合
    Java中string拼接,StringBuilder,StringBuffer和+
    java调优随记-java对象大小
    java调优随记-堆和栈
    java中一直说一个汉字使用两个字节,原来是不准确的
    kv存储对抗关系型数据库
    记一篇
    变态的静态资源缓存与更新
    git add shh public key
    hashmap 的最优访问
  • 原文地址:https://www.cnblogs.com/wang-xiaohui/p/9943354.html
Copyright © 2020-2023  润新知