[20241115]gdb检查选择进程注意.txt --//前一段时间写ext_kglob.sh脚本,选择ora_dbw0_<sid>进程有点不妥. --//通过演示说明问题: 1.环境: SCOTT@book01p> @ver2 ============================== PORT_STRING : x86_64/Linux 2.4.xx VERSION : 21.0.0.0.0 BANNER : Oracle Database 21c Enterprise Edition Release 21.0.0.0.0 - Production BANNER_FULL : Oracle Database 21c Enterprise Edition Release 21.0.0.0.0 - Production Version 21.3.0.0.0 BANNER_LEGACY : Oracle Database 21c Enterprise Edition Release 21.0.0.0.0 - Production CON_ID : 0 PL/SQL procedure successfully completed. 2.测试: $ ps -ef| grep ora_dbw[0] oracle 2761 1 0 08:13 ? 00:00:00 ora_dbw0_book --//window 1: $ rlgdb -f -p 2761 Loaded symbols for /u01/app/oracle/product/21.0.0/dbhome_1/lib/libshpkavx2.so 0x00007f90f45fcfca in semtimedop () at ../sysdeps/unix/syscall-template.S:81 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/src/debug/glibc-2.17-c758a686/sysdeps/unix/syscall-template.S:81:3374:beg:0x7f90f45fcfca (gdb) --//开始我一直没注意下划线内容.实际如果你使用gdb检查普通用户进程是看不见类似内容的. --//以sys用户登录.执行: --//session 1: SYS@book> alter system checkpoint ; --//挂起.. SYS@book> @ ashtop event,p1raw,p1,p3raw 1=1 &30s Total Distinct Distinct Distinct Seconds AAS %This EVENT P1RAW P1 P3RAW FIRST_SEEN LAST_SEEN Execs Seen Tstamps Execs Seen1 --------- ------- ------- ------------------------------ ---------------- --- ---------------- ------------------- ------------------- ---------- -------- ----------- 30 1.0 77% | DLM cross inst call completion 0000000000000001 1 0000000000000008 2024-11-15 08:38:06 2024-11-15 08:38:35 1 30 30 4 .1 10% | 300 2024-11-15 08:38:12 2024-11-15 08:38:24 1 4 4 2 .1 5% | 3 2024-11-15 08:38:06 2024-11-15 08:38:13 1 2 2 2 .1 5% | 100 2024-11-15 08:38:12 2024-11-15 08:38:16 1 2 2 1 .0 3% | 20 2024-11-15 08:38:20 2024-11-15 08:38:20 1 1 1 --//window 1,按c继续: (gdb) c Continuing. --//session 1: SYS@book> alter system checkpoint ; System altered. --//也就是选择ora_dbw0_<sid>进程有点不妥,可能影响正常的业务.必须选择1个后台进程,不大可能影响正常的业务. SYS@book> @ bgkill mmon INDX KSUPRPNM PROCESS_FLAG KSUPRPID ---------- ------------------------------ ----------------- ------------------------ 29 oracle@centtest (MMON) 2 2791 --//我也不知道该选择那个后台进程.最终选择mmon,kill该进程可以再次生成. $ ps -ef | grep mmo[n] oracle 2791 1 0 08:13 ? 00:00:03 ora_mmon_book $ kill -9 2791 $ ps -ef | grep mmo[n] --//等上一小会发现可以再次建立mmon进程. $ ps -ef | grep mmo[n] oracle 4177 1 6 08:52 ? 00:00:00 ora_mmon_book --//进程号已经变化. --//alert*.log出现如下信息: Restarting dead background process MMON Starting background process MMON 2024-11-15T08:52:02.740413+08:00 MMON started with pid=29, OS id=4177 3.附上bgkill.sql脚本: $ cat bgkill.sql column KSUPRPNM format a30 SELECT indx,ksuprpnm,TO_CHAR(ksuprflg,'XXXXXXXXXXXXXXXX') process_flag,KSUPRPID FROM x$ksupr WHERE BITAND(ksuprflg,4) != 4 and KSUPRPID is not null and ksuprpnm like upper('%&&1%') ORDER BY indx ; --//该脚本用来确定后台进程是否可以kill.
[20241115]gdb检查选择进程注意.txt
来源:这里教程网
时间:2026-03-03 20:49:32
作者:
编辑推荐:
下一篇:
相关推荐
-
雷神推出 MIX PRO II 迷你主机:基于 Ultra 200H,玻璃上盖 + ARGB 灯效
2 月 9 日消息,雷神 (THUNDEROBOT) 现已宣布推出基于英
-
制造商 Musnap 推出彩色墨水屏电纸书 Ocean C:支持手写笔、第三方安卓应用
2 月 10 日消息,制造商 Musnap 现已在海外推出一款 Oce
热文推荐
- OPatch安装补丁将Oracle 19.3升级到19.23
OPatch安装补丁将Oracle 19.3升级到19.23
26-03-03 - Oracle数据库如何模拟ORA-600 [4193]错误?如何解决?
Oracle数据库如何模拟ORA-600 [4193]错误?如何解决?
26-03-03 - shutdown abort关库,真的有可能起不来吗?
shutdown abort关库,真的有可能起不来吗?
26-03-03 - 又是windown服务器断电引起的ora-00333
又是windown服务器断电引起的ora-00333
26-03-03 - 同事不小心drop column了一个列,真的凉凉了吗?
同事不小心drop column了一个列,真的凉凉了吗?
26-03-03 - 数据库数据恢复—Oracle数据库数据恢复案例
数据库数据恢复—Oracle数据库数据恢复案例
26-03-03 - 企业数据管理是否“镜花水月”
企业数据管理是否“镜花水月”
26-03-03 - Oracle自动处理表空间不足脚本
Oracle自动处理表空间不足脚本
26-03-03 - 如何一键完成20个Oracle实例运维脚本部署
如何一键完成20个Oracle实例运维脚本部署
26-03-03 - 03 高效调优:Oracle内存体系的精细化管理实践
03 高效调优:Oracle内存体系的精细化管理实践
26-03-03
