记录一次修改sga大小之后出现的一系列报错

修改了oracle的sga大小之后,遇到了一系列的报错。

00844和00851报错

SQL> startup;
ORA-00844: Parameter not taking MEMORY_TARGET into account
ORA-00851: SGA_MAX_SIZE 2147483648 cannot be set to more than MEM
SQL> 

01078报错

SQL> startup;
ORA-01078: failure in processing system parameters
LRM-00109: could not open parameter file '/u01/app/oracle/product/11.2.4/db_1/dbs/inittest.ora'

一、修改过程

1.1 为什么我要修改sga大小

在测试的时候,插入大量数据发现30009错误,我以为是sga小导致的

SQL> insert into t select rownum from dual connect by level<=10000000;
insert into t select rownum from dual connect by level<=10000000*
ERROR at line 1:
ORA-30009: Not enough memory for CONNECT BY operationElapsed: 00:00:13.51
SQL>

查看sga

SQL> show parameter sga;NAME                     TYPE                  VALUE
------------------------------------ --------------------------------- ------------------------------
lock_sga                 boolean                   FALSE
pre_page_sga                 boolean                   FALSE
sga_max_size                 big integer               1584M
sga_target               big integer               1G
SQL> 

查看pga

SQL> show parameter pgaNAME                     TYPE                  VALUE
------------------------------------ --------------------------------- ------------------------------
pga_aggregate_target             big integer               0
SQL>

1.2 修改sga

更改sga

SQL> alter system set sga_max_size=2048M scope=spfile;System altered.Elapsed: 00:00:00.06
SQL>

1.3 报错1

关闭和启动数据库

SQL> shutdown
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL>
SQL> startup
ORA-00844: Parameter not taking MEMORY_TARGET into account
ORA-00851: SGA_MAX_SIZE 2147483648 cannot be set to more than MEMORY_TARGET 1660944384.

结果出错了。经过查找资料,发现11g新增了个参数MEMORY_TARGET,其大小等于PGA+SGA,当sga的大小大于MEMORY_TARGET就会报如上错误。

查看MEMORY_TARGET大小,发现大小为1584M,与sga不符。

SQL> show parameter memory_target;NAME                     TYPE                  VALUE
------------------------------------ --------------------------------- ------------------------------
memory_target                big integer               1584M
SQL>

修改spfile文件中的参数

sga_max_size=1653604352

启动数据库

SQL> startup nomount;
ORA-01078: failure in processing system parameters
LRM-00109: could not open parameter file '/u01/app/oracle/product/11.2.4/db_1/dbs/inittest.ora'
SQL> 

1.4 报错2

启动后遇到了01078报错。解决办法如下:
test(实例名)文件夹下的init.ora.xxx 文件复制到dbs目录下即可,复制后的名字按照之前报错的提示输入。

[oracle@localhost ~]$ cp /u01/app/oracle/admin/test/pfile/init.ora.922018114616 /u01/app/oracle/product/11.2.4/db_1/dbs/inittest.ora

启动数据库

SQL> startup;
ORACLE instance started.Total System Global Area 1653518336 bytes
Fixed Size          2213896 bytes
Variable Size         956303352 bytes
Database Buffers      687865856 bytes
Redo Buffers            7135232 bytes
Database mounted.
Database opened.
SQL> 

二、总结

归根结底还是对数据库原理不熟导致的,牢记memory_target值需为sga+pga内存的和。

记一次修改sga大小之后出现的一系列报错相关推荐

  1. 记录一次修改sga大小之后出现的一系列报错

    记录一次修改sga大小之后出现的一系列报错 修改了oracle的sga大小之后,遇到了一系列的报错. 00844和00851报错 SQL> startup; ORA-00844: Paramet ...

  2. 记一次线上环境 redis偶尔连接超时报错 解决

    记一次线上环境 redis偶尔连接超时报错 解决 贴出本地控制台日志 说实话,很痛苦,跟进很久了,一直认为的jvm程序所使用的配置的连接池框架问题 因为程序为 springboot 2 spring ...

  3. 记一次Java代码不执行,也不报错!求大佬赐教!

    记一次Java代码不执行,也不报错!求大佬赐教! 发生背景 问题所在 发生背景 实训在做串口通讯的时候,进行数据处理时,代码执行一部分,有一部分没有执行. 十分纳闷,代码如下: /*** 处理返回结果 ...

  4. 宝塔面板不能备份数据库,数据库备份大小20K,数据库备份报错mysqldump: Got error: 1045: Access denied for user 'root'@'localhost'

    宝塔面板不能备份数据库 数据库备份大小20K 备份数据库报错 mysqldump: Got error: 1045: Access denied for user 'root'@'localhost' ...

  5. ROS Base path和Source space不一致问题,修改文件名后无法make问题,catkin_make报错问题

    在一次在ROS 的学习实践中,将Ros工程目录名称更改了,source后,出现了base path和Source space不一致问题: 报错提示: Base path: /home/pot/catk ...

  6. 修改xampp中的mysql的密码报错,ERROR 1348 (HY000): Column 'Password' is not updatable

    xampp中的mysql(MariaDB)默认密码为空,进入mysql的bin目录,输入mysql -u root -p,回车,无密码登录: 查看所有数据库,选择mysql数据库: show data ...

  7. vue组件名,修改了大小写导致 引入路径~报错

    引入路径一直报错,原因是:创建的时候用了banner.vue,后再修改为Banner.vue导致的 解决方法:​​​​​​​ 方法一:删除修改过的.vue.重新创建 方法二:修改.vue文件名的字符长 ...

  8. Oracle修改varchar类型为clob时,报错:ORA-22858

    Oracle直接将varchar2修改为clob会报错,因此可使用以下方式进行修改: 举例:你的表名:TableName 需要修改的字段:name 辅助的字段:name_up alter table ...

  9. 记一次Mysql连接未满但程序却报错连接已满获取连接超时GetConnectionTimeoutException的问题

    1.问题描述 今天同事找到我,让我帮忙查一个问题,据说已经持续一个月: 之前服务正常,问题在上个月开始出现. 服务运行大概1天左右,后台开始报错:获取数据库连接失败GetConnectionTimeo ...

最新文章

  1. C#获取进程的CPU使用率
  2. C++程序安装卸载WDM驱动
  3. 轻松学MVC4.0–2 创建用户列表页面
  4. C/Cpp / 虚函数是否可以用 inline 修饰
  5. 【spring-session】store-type
  6. Centos7下安装netstat
  7. java中字符编码详解
  8. js 判断对象是否是Array
  9. 使用web服务器控件显示页面,服务器_Web服务器控件:TextBox控件,阅读此文请先查看网页教学网 - phpStudy...
  10. 【系统架构】大型网站架构模式
  11. 默安科技关键信息基础设施安全防护论文入选中文核心期刊
  12. hobbits.me+霍比特+php,霍比特人:意外之旅(MP3+中英字幕) 第24期:飞贼霍比特人
  13. 信息系统安全等级保护流程
  14. 极客时间课程笔记:业务安全
  15. 透过协议看PCIe ASPM L1.2
  16. Kubernets集群管理-升级 kubernetes 集群版本到v1.21.14
  17. QSettings遇到神坑
  18. Android 4.4以上使用HttpURLConnection底层使用OkHttp实现的源码分析
  19. 安卓入门,简单画图板的实现
  20. ACCESS表达式中的叹号“!”和点号“.”的区别

热门文章

  1. Mac电脑长截图、滚动截图APP下载——Bettter And Better For Mac
  2. HTML中的div怎么左中右布局,CSS 之 div 左中右布局
  3. 数据库管理之用户权限管理
  4. java的类加载器都有哪些_java类加载器包括哪些内容?树状结构示意图展示
  5. java 小球运动轨迹_Flutter Matrix4矩阵动画实现移动、缩放、旋转,让你的纸飞机沿着贝塞尔曲线轨迹飞起来...
  6. ps如何让图案平铺重复
  7. js姓名除了姓显示其他*
  8. paddleX使用教程学习笔记
  9. xpath的使用(新手必看)
  10. ⑥ Vue的生命周期