测试环境有套库,开发人员反映cpu使用率非常高,但是他们没有在数据库执行什么语句。
我生成了awr和实时查看库上语句执行情况,发现有如下语句,一直占有cpu资源:
select s.synonym_name object_name, o.object_type
from all_synonyms s, sys.all_objects o
where s.owner in ('PUBLIC', :schema)
and o.owner = s.table_owner
and o.object_name = s.table_name
and o.object_type in ('TABLE',
'VIEW',
'PACKAGE',
'TYPE',
'PROCEDURE',
'FUNCTION',
'SEQUENCE')
该语句的等待事件是:row cache mutex
数据库版本是12.2,我怀疑是不是踩了相关bug,但是在metalink上找了一圈,没有任何发现。感觉很诡异。
然后发现,只要是plsql developer连到数据库上,便会有一个执行上述语句的会话存在,占用100%的cpu(服务器4c,单颗cpu 100%)
----------------