ORA-00371: not enough shared pool memory
故障描述:
由于数据库所在服务器内核崩溃,经过几个小时的修复也没能挽救回来,只能将数据目录挂载至其他地方然后尝试把数据库拉起来。
结果在启动时出现如下报错
SQL> startup pfile='/home/oracle/initgabsjsb.ora'; ORA-00371: not enough shared pool memory
几经折腾发现是参数文件中缺少processes这个参数而导致,如果没有设置process,process的默认值可能根据cpu的数量来估算,会是一个很高的值,进一步造成oracle认为需要很多shared pool。因此启动时候报错如果小于2G shared pool,就启动不了,
参数文件如下:
*.audit_file_dest='/oracle/admin/gabsjsb/adump' *.control_files='/oradata/gabsjsb/control01.ctl','/oradata/gabsjsb/control02.ctl' *.diagnostic_dest='/oracle' *.db_name='gabsjsb' *.dispatchers='PROTOCOL=TCP (SERVICE=gabsjsbXDB)' *.compatible='11.2.0.4.0' *.db_files=1000 *.processes=3000
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?