点击上方"蓝字"
关注我们,享更多干货!
Oracle希望在数据库主机CPU使用率枯竭时,尽可能让核心的几个后台进程可以最大优先级获取CPU, 当然CPU过高会导致I/O 响应时间变长和网络延迟增加,也会间接影响数据的整体性能。
从Oracle 10g开始是有隐藏参数_high_priority_processes控制哪些进程是高优先级,19c参数中除了_high_priority_processes,还增加了_highest_priority_processes控制高优先级。在10.2版本中,Oracle缺少_high_priority_processes对RAC的核心进程LMS*设置高优先级,在11g版本中对LMS*|VKTM设置高优先级,在19c版本中_highest_priority_processes对VKTM是最高优先级,且提供了更多对LMS*|LM*|LCK0|GCR*|CKPT|DBRM|RMS0|LGWR|CR*|RMV*配置高优先级 。
记得在10.2.0.3前有个bug会导致使用CPU进程过高。最近有客户19c RAC遇到CPU使用率超过90%时GC问题较为突出,在查看LMS时,没有在RT模式的状态引起了注意,在19c中LMS还是有一些变化,下面进行了简单的记录。
在Linux平台上,进程的内核调用模式分为三类:
TS – SCHED_OTHER (SCHED_NORMAL) ,这是分时调度策略,缺省的通用级别;
FF – SCHED_FIFO,这是实时调度策略,先进先出;
RR – SCHED_RR,实时调度策略,时间片轮转;
先看一个正常环境 Oracle 19c RAC 2-nodes on RHEL 7.8
db alert log
Starting background process CLMN
CLMN started with pid=3, OS id=28714
Starting background process PSP0
PSP0 started with pid=4, OS id=28731
Starting background process IPC0
2021-03-23 10:07:32.440000 +08:00
IPC0 started with pid=5, OS id=29420
Starting background process VKTM
Starting background process GEN0
VKTM started with pid=6, OS id=29445 at elevated (RT) priority
VKTM running at (1)millisec precision with DBRM quantum (100)ms
Starting background process MMAN
Starting background process LMD1
LMD0 started with pid=23, OS id=29631
* Load Monitor used for high load check
* New Low - High Load Threshold Range = [130560 - 174080]
LMS1 started with pid=26, OS id=29640_29663 at elevated (RT) priority
LMS0 started with pid=24, OS id=29635_29662 at elevated (RT) priority
LMS2 started with pid=28, OS id=29646_29666 at elevated (RT) priority
Starting background process LMD2
LMD1 started with pid=36, OS id=29659
LMS3 started with pid=30, OS id=29649_29667 at elevated (RT) priority
LMS4 started with pid=32, OS id=29651_29672 at elevated (RT) priority
LMS5 started with pid=34, OS id=29653_29677 at elevated (RT) priority
Starting background process LMD3
LMD2 started with pid=37, OS id=29681
LMD3 started with pid=38, OS id=29686
Starting background process RMS0
RMS0 started with pid=39, OS id=29689
oracle@anbob_com:/home/oracle> ps -efc|grep vktm
grid 34874 1 RR 41 Jun03 ? 00:06:20 asm_vktm_+ASM1
oracle 42358 1 RR 41 Jun03 ? 00:05:24 ora_vktm_anbob1
grid 58462 1 RR 41 Jun03 ? 00:06:18 mdb_vktm_-MGMTDB
Note:
使用ps-c选项查看进程优先级时&