在导出过程中报了ORA-04031: unable to allocate 168 bytes of shared memory 的错误。
之后调整了3个参数的值,shared_pool_size,shared_pool_size_reserved
为什么说3个呢,因为shared_pool_size 在pdb和cdb中是俩个值,得分别设置、而shared_pool_size_reserved是CDB的
报错信息如下:
RA-04031: unable to allocate 65240 bytes of shared memory ("shared pool","select s.inst_id,s.addr,s.in...","sga heap(1,0)","KJSC rnb slots")
Use ADRCI or Support Workbench to package the incident.
表面上是我的机器的共享内存不足。
之后我扩容了shared_pool_size,
alter system set shared_pool_size = 200m scope=both;
需要注意的是保留值这个参数不能动态调整,只能先修改spfile之后重启生效,一般是共享内存的1/10
alter system set shared_pool_size_reserved=20m scope=spfile;
重启job之后还是报错。
突然发现在job里报过这样的一个错误:
ORA-39097: Data Pump job encountered unexpected error -4031
这个错误除了系统设置之外还有权限的错误。
有可能是这个用