ORA-04031:oracle无法分配共享内存
百度知,是由于oracle的shared_pool空间不够的原因,解决方式有两种
第一种:治标不治本
alter system flush shared_pool;
这种方法可以立即有效果,但是不是根本的解决办法,一小时左右又开始报上面的错误了,再次执行就可以了。
第二种:治标又治本
查看:
SHOW PARAMETERS SHARED_POOL_SIZE
更改:
alter system set SHARED_POOL_SIZE='50M' SCOPE=both;
上面这句话必须在sys用户下或是用dba的身份登录的用户下执行。
贴士:shared_pool 是什么东东?
share_pool_size(共享池)的作用:
1、sql共享缓冲池 2、该参数是库高速缓存和数据字典的高速缓存。
设置共享池后,可能出现ORA-32001: 已请求写入 SPFILE, 但是在启动时未指定 SPFILE
alter system set SHARED_POOL_SIZE='50M' SCOPE=both;
ORA-32001: 已请求写入 SPFILE, 但是在启动时未指定 SPFILE
显示spfile是未启动状态
首先确定数据库是以spfile启动的还是pfile启动
用show parameter spfile查看如果values对应有值,表示是spfile启动的。否则就是pfile启动的。
SQL> show parameter spfile
NAME TYPE VALUE
------------------------------------ -----------------------------------------
spfile string
值为空,表示数据库以pfile启动
要动态修改一定要用spfile启动。如果现在是用pfile启动,可以这样切换成spfile启动:
SQL>create spfile from pfile;SQL>shutdown immediate;SQL>startup;
转载于:https://www.cnblogs.com/leis/p/7365218.html
ORA-04031:oracle无法分配共享内存相关推荐
- Oracle数据库案例整理-Oracle系统执行时故障-内存过少导致分配共享内存失败
1.1 现象描写叙述Oracle分配共享内存失败,ALTER日志显演示样例如以下错误信息.Errorsinfile/oracle/db/diag/rdbms/ora01/ora01/trac ...
- oracle不存在共享内存域,Oracle数据库共享内存分配不足怎么办
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 Oracle数据库中,共享内存分配不足时,因为没有有效的利用保留区,就会造成无法分配合适的共享区的问题.cuug总结,一个ORACLE例程的系统全局区域( ...
- oracle12 共享内存不存在,DBA警世录:Oracle的共享内存段
DBA警世录:Oracle的共享内存段 最近看到ITPUB上有这样一个帖子,觉得有点意思,收录一下,以为借鉴. 这位朋友的Apache和Oracle运行在同一台主机上:平台是redhat as 3 , ...
- 进程间的通信方式(一):共享内存
共享内存指 (shared memory)在多处理器的计算机系统中,可以被不同中央处理器(CPU)访问的大容量内存.由于多个CPU需要快速访问存储器,这样就要对存储器进行缓存(Cache).任何一个缓 ...
- 转:Linux--进程间通信(信号量,共享内存)
源地址:http://www.cnblogs.com/forstudy/archive/2012/03/26/2413724.html Linux--进程间通信(信号量,共享内存)(转) 一. 信号量 ...
- 第三十六讲:用好共享内存工具:Slab管理器
刚刚我们谈到nginx不同的worker进程间需要共享信息的时候,需要通过共享内存:我们也谈到了共享内存上可以使用链表或者红黑树这样的数据结构;但是每一个红黑树上有许多节点:每一个节点你需要分配内存去 ...
- 进程间通信之-共享内存Shared Memory--linux内核剖析(十一)
共享内存 共享内存是进程间通信中最简单的方式之中的一个. 共享内存是系统出于多个进程之间通讯的考虑,而预留的的一块内存区. 共享内存同意两个或很多其他进程訪问同一块内存,就如同 malloc() 函数 ...
- 在驱动和应用程序间共享内存
在驱动和应用程序间共享内存 在不同的场合,很多驱动编写人员需要在驱动和用户程序间共享内存.两种最容易的技术是: l 应用程序发送IOCTL给驱动程序,提供一个指向内存的指针,之后驱动程序和应用程序就可 ...
- 进程之间的通信方式-共享内存
共享内存是被多个进程共享的一部分物理内存.共享内存是进程间共享数据的一种最快的方法,一个进程向共享内存区域写入了数据,共享这个内存区域的所有进程就可以立刻看到其中的内容.原理图如下: 共享内存的实现分 ...
最新文章
- 快学Scala-第八章 继承
- python 文本分析库_Python有趣|中文文本情感分析
- Django两天搭建个人博客
- html显示和隐藏不占空间的是什么,css怎么设置不占用空间的隐藏?
- CSS 相对|绝对(relative/absolute)定位系列(三)
- 离散数学引发的脑科学思考
- jq post 表单提交文件_Power Query 中使用POST方法进行网络抓取的尝试
- 光彩集团小宇智能机器人_“智能急救教学机器人”走进文惠小学集团总部文韬校区...
- Python_60之迭代器模块
- Flink 如何支持特征工程、在线学习、在线预测等 AI 场景?
- 上网行为管理软件-怎么查看电脑近期使用记录...
- 英文书籍下载常用网站
- 字节跳动 —— 2023暑期实习面试
- gps校正 android,通过GPS时间同步Android设备?
- foobar2000后台运行
- Assassin暗杀者-自用短小精悍的webshell管理工具分享
- Python 中 ‘unicodeescape’ codec can’t decode bytes in position XXX: trun错误原因分析及解决方案
- Flutter 环境配置
- 高等概率论 Chapter 5. Random Variables on a Countable Space
- 树莓派人体感应警报(python)HC-SR501红外人体感应