ORA-04031: 无法分配4160字节的共享内存 ("large pool","unknown object","hash-join subh"

ORA-04031: 无法分配4160字节的共享内存 ("large pool","unknown object","hash-join subh","kllcqc:kllcqslt")

 

解决方法:

SQL> show parameter dispa

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
dispatchers                          string      (PROTOCOL=TCP)
max_dispatchers                      integer     5
mts_dispatchers                      string      (PROTOCOL=TCP)
mts_max_dispatchers                  integer     5

sql> alter system set dispatchers='(PROTOCOL=TCP)(SERVICE=orclXDB)';


SQL> show parameter dispa

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
dispatchers                          string      (PROTOCOL=TCP)(SERVICE=orclXDB
                                                 )
max_dispatchers                      integer     5
mts_dispatchers                      string      (PROTOCOL=TCP)(SERVICE=orclXDB
                                                 )
mts_max_dispatchers                  integer     5

 

问题解决,再用select × from v$session 查看 ,都是dedicated连接了

 

后者指定了服务名,而前者没有。没有指定服务器,大概就造成了oracle实例向listener注册时,
以任何服务名来建立的连接都是使用shared server方式。这是个人理解

 

 

转载

你可能感兴趣的:(oracle)