嚴華 发表于 2024-8-29 10:45:26

ORA-00604: error occurred at recursive SQL level 1 ORA-04031: unable t

报错信息

https://i-blog.csdnimg.cn/direct/1579c6256e2e46dd8f0487a0cfd24aea.png
报错表明

ORA-00604 错误表示在递归的 SQL 级别 1 执行时发生了错误,这通常意味着在 Oracle 数据库内部执行的一个 SQL 语句大概是数据库自身的内部利用中出现了问题。
ORA-04031 错误表示 Oracle 无法分配所需的内存空间,这通常是由于数据库在运行时,可用的共享内存区(通常是共享池)不足,无法完成当前利用。
解决

1.可以通过调解初始化参数 SHARED_POOL_SIZE 增长共享池的大小,使用如下命令:(假设设置为 500MB)。
ALTER SYSTEM SET SHARED_POOL_SIZE = '500M' SCOPE=SPFILE;
2.可以通过执行一些清理利用来释放共享池中的内存。运行如下命令清理共享池。
ALTER SYSTEM FLUSH SHARED_POOL;
但是只坚持了一上午,晚上的时候又报错
Connection open error . ORA-04031: unable to allocate 752 bytes of shared memory (“shared pool”,“unknown object”,“KKSSP^371”,“kglss”)
可以用如下命令修改SGA_MAX_SIZE与SGA_TARGET的值,调大一些,
alter system set sga_max_size=2G scope=spfile;
alter system set sga_target=2G scope=spfile;

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页: [1]
查看完整版本: ORA-00604: error occurred at recursive SQL level 1 ORA-04031: unable t