ORACLE常见错误:ORA-00823、ORA-00838

  • 问题:

启动数据库失败,报错: Specified value of sga_target greater than sga_max_size
在这里插入图片描述

  • 原因

这个异常通常是因为改动了sga_max_size或者sga_target这两个参数值,导致sga_target比sga_max_size值大。

Oracle 10g开始,引入SGA_TARGET初始化参数, 让oracle自动管理SGA中
(Buffer cache (DB_CACHE_SIZE),
Shared pool (SHARED_POOL_SIZE),
Large pool (LARGE_POOL_SIZE),
Java pool (JAVA_POOL_SIZE),
Streams pool (STREAMS_POOL_SIZE))的内存自动分配,
即ASSM(Automatic Shared Memory Management)

SYS> show parameter sga;

NAME                                 TYPE           VALUE
------------------------------------ ----------- ------------------------------
lock_sga                             boolean        FALSE
pre_page_sga                         boolean        FALSE
sga_max_size                         big integer    632M
sga_target                           big integer    0
  • 解决

使用sysdba用户登录数据库

[oracle@database ~]$ sqlplus /nolog  
SQL> conn /as sysdba  

生成配置文件

SQL> create pfile from spfile;(这个命令生成的文件在ORACLE_HOME环境变量dbs文件夹下,名字为initorcl.ora)

[oracle@database ~]$ vim $ORACLE_HOME/dbs/initorcl.ora
#修改sga_max_size比sga_target大就行了

在这里插入图片描述

修改好之后

SQL> create spfile from pfile;
SQL> startup;

ORA-00838

  • 问题

启动数据库失败,报错: Specified value of MEMORY_TARGET is too small

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-OY5CcKvu-1660902366304)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\image-20220804140156920.png)]

  • 原因

查看ORACLE解释

00838, 00000, "Specified value of MEMORY_TARGET is too small, needs to be at least %sM"
// *Cause: The specified value of MEMORY_TARGET was less than the sum of the 
//         specified values for SGA_TARGET and PGA_AGGREGATE_TARGET.
// *Action: Set MEMORY_TARGET to at least the recommended value.

 减少SGA值,或增大MEMORY_TARGET值, 或还原修改前状态即可解决问题
  • 解决

使用sysdba用户登录数据库

[oracle@database ~]$ sqlplus /nolog  
SQL> conn /as sysdba  

生成配置文件

SQL> create pfile from spfile;(这个命令生成的文件在ORACLE_HOME环境变量dbs文件夹下,名字为initorcl.ora)

[oracle@database ~]$ vim $ORACLE_HOME/dbs/initorcl.ora
#修改memory_target的值大于1888M就行了

在这里插入图片描述

SQL> create spfile from pfile;
SQL> startup;
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

咸鱼Linux运维

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值