暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

Oracle 共享池问题

askTom 2017-01-19
271

问题描述

嗨,汤姆和团队,

非常感谢你的宝贵的专业回答和解释。

由于过去一个月的用户查询经常出现“ora-04031-unable分配xxx字节共享内存”的错误,因此,即使我们无法查询数据库中的任何内容,也必须跳出数据库

您能让我知道如何避免这个问题吗?是否有任何方法可以计算共享池的最佳大小?

专家解答

ora-4031的许多*潜在*原因。我强烈建议你看看MOS注释1088239.1。

但同时,我们也有一个诊断工具,这也会有所帮助。参见MOS注释1521925.1


你可以做类似的事情

SQL> select * from v$sgastat order by pool, bytes desc;

POOL         NAME                                          BYTES     CON_ID
------------ ---------------------------------------- ---------- ----------
java pool    free memory                                16777216          0
large pool   free memory                                33292288          0
large pool   PX msg pool                                  262144          0
shared pool  free memory                               115875992          0
shared pool  allocate segment latch re                  58802176          0
shared pool  KGLH0                                      39358864          0
shared pool  SQLA                                       27873360          0
shared pool  KQR X SO                                   13357016          0
shared pool  write state object                         13023264          0
shared pool  db_block_hash_buckets                      11538432          0
shared pool  event statistics per sess                  11512064          0
shared pool  KGLS                                       10598168          0
shared pool  KGLHD                                      10591064          0
shared pool  PLMCD                                       9017784          0
shared pool  row cache                                   8656032          0
...


查看共享池中的高消费群体,但通常

(a)信息有些神秘
b)迅速变化

作为研究原因时的权宜之计,您可以通过init.ora参数来增加共享池的大小。

「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论