Oracle物理备库ORA-04023错误处置流程及思绪

###:05:59  泉源:


1 妨碍呼应

    某客户于3月25日反应一个位于HPUX主机的Oracle 11.2.0.4版本的备库数据库软件地点的LV空间利用率增加较快。这个备库有不少的读取商业,客户担忧此题目会影响到正常商业,于是约请ag视讯垣工程师到客户现场举行妨碍排查。




2 妨碍排查
    
    ag视讯垣工程师工程师抵达现场后,经过统计文件夹的巨细,定位到磁盘空间占用较高的本源在于数据库的trace目次,以是依据工夫来排序了一下trace文件, 发明有许多较大的文件,仅三天发生的trace文件相比于正常工夫段多了许多,到达了近70G之多。许多trace文件较大,至多都在10M以上,多的有40多M,数目也较多,多达几千个,这足以阐明数据库应该存在题目。

    抽查了几个较大的trace文件头,工程师留意到这些trace文件相干的会话的module都是一个exe(客户是家医院,许多步伐是C/S架构)。利用select sid, serial#, machine, module, terminal from v$session where module =’***.exe’与select s.sid, s.serial#, s.machine, s.module, s.terminal from v$session s, v_process p where s.module =’***.exe’ and s.paddr=p.addr辨别定位到了会话泉源的主机与对应的server process历程, 再依据历程编号找到了近来的trace, 发明trace文件还不停在刷kksfbc: entering reparse diagnosis mode for xsc:********之类的信息。Trace文件末端还记载了堕落的SQL。复制出SQL到备库实行,公然堕落,错误代码为:ORA-04023: Object could not be validated or authorized。主库实行可以失掉正常的后果。如许看来,此题目最有大概是备库的bug。

    客户登录到方才找到的使用地点的主机,在使用的日记文件中发明了少量的ORA-04023错误,最早是从3月17日开端,依据错误搜刮Oracle Support,发明了一个相干的bug:Bug 16713938 : SELECT ON VIEW FAILS WITH ORA-04023 ON ADG FROM VIEW OWNER SCHEMA。这个bug没有给出patch来修复,work around是:alter system flush shared_pool, 革新数据库实例的共享池。这个题目,有大概是由于主库真个视图在产生了形态变动之后, 备库的shared pool中的library cache,没有更新以反响主库端形态的变革所招致的。

    实行alter system flush shared_pool之后,实行SQL不再堕落,再反省使用的日记,也再未看到有相似的错误。数据库的trace文件巨细也规复了正常。



3 妨碍总结
    
    由这个诊断历程可以看出,Oracle的active data guard支持read only, 也不是一件复杂的事变。备库在使用redo的时分,怎样去革新共享池,包管工具的形态与主库端分歧,是个比力贫苦的题目。
    别的, 客户使用运维也存在较大的题目。过后得知,在客户方这个使用如今没什么人用,以是即便使用端堕落,没无数据也没有人体贴此事。直到终极数据库呈现了题目,才发明使用堕落。
1588759166998019.jpg



erwei.jpg

IT真办事 尽在ag视讯垣

泛云盘算的智绘者
网空宁静的智绘者