프린트 하기

OS 환경 : Oracle Linux 8.4 (64bit)

 

DB 환경 : Oracle Database 19.3.0.0

 

방법 : Oracle Linux 8 프로세스 강제 종료 스크립트

리눅스 환경에서 특정 이름으로 시작하는 프로세스들을 모두 강제로 종료하고 싶을때 사용하는 스크립트임
본문에서는 ora_로 시작하는 오라클 프로세스들을 모두 강제종료함
테스트 환경에서 nohub로 실행되는 프로그램들을 한번에 kill 하거나 특정 경우에 사용하면 유용함

 

 

kill_process.sh 파일 생성

1
2
3
4
5
6
7
8
9
10
# cat kill_process.sh
#!/bin/bash
 
# 실행 중인 cpulimit 프로세스의 PID 추출
pids=$(ps -ef | grep ora_ | grep -v grep | awk '{print $2}')
 
# 각 PID에 대해 kill -9 명령어 실행
for pid in $pids; do
  kill -9 $pid
done

 

 

실행 권한 부여

1
# chmod u+x kill_process.sh

 

 

기존 프로세스 확인

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
# ps -ef | grep ora_ | grep -v grep
oracle   48555     1  0 16:02 ?        00:00:00 ora_pmon_oracle19
oracle   48557     1  0 16:02 ?        00:00:00 ora_clmn_oracle19
oracle   48559     1  0 16:02 ?        00:00:00 ora_psp0_oracle19
oracle   48561     1  0 16:02 ?        00:00:03 ora_vktm_oracle19
oracle   48565     1  0 16:02 ?        00:00:00 ora_gen0_oracle19
oracle   48567     1  0 16:02 ?        00:00:00 ora_mman_oracle19
oracle   48571     1  0 16:02 ?        00:00:00 ora_gen1_oracle19
oracle   48574     1  0 16:02 ?        00:00:00 ora_diag_oracle19
oracle   48576     1  0 16:02 ?        00:00:00 ora_ofsd_oracle19
oracle   48579     1  0 16:02 ?        00:00:00 ora_dbrm_oracle19
oracle   48581     1  0 16:02 ?        00:00:00 ora_vkrm_oracle19
oracle   48583     1  0 16:02 ?        00:00:00 ora_svcb_oracle19
oracle   48585     1  0 16:02 ?        00:00:00 ora_pman_oracle19
oracle   48587     1  0 16:02 ?        00:00:01 ora_dia0_oracle19
oracle   48589     1  0 16:02 ?        00:00:02 ora_dbw0_oracle19
oracle   48591     1  0 16:02 ?        00:00:07 ora_lgwr_oracle19
oracle   48593     1  0 16:02 ?        00:00:00 ora_ckpt_oracle19
oracle   48595     1  0 16:02 ?        00:00:08 ora_lg00_oracle19
oracle   48597     1  0 16:02 ?        00:00:00 ora_smon_oracle19
oracle   48599     1  0 16:02 ?        00:00:06 ora_lg01_oracle19
oracle   48601     1  0 16:02 ?        00:00:00 ora_smco_oracle19
oracle   48603     1  0 16:02 ?        00:00:00 ora_reco_oracle19
oracle   48605     1  0 16:02 ?        00:00:00 ora_w000_oracle19
oracle   48607     1  0 16:02 ?        00:00:00 ora_lreg_oracle19
oracle   48609     1  0 16:02 ?        00:00:00 ora_w001_oracle19
oracle   48611     1  0 16:02 ?        00:00:00 ora_pxmn_oracle19
oracle   48615     1  0 16:02 ?        00:00:01 ora_mmon_oracle19
oracle   48617     1  0 16:02 ?        00:00:01 ora_mmnl_oracle19
oracle   48619     1  0 16:02 ?        00:00:00 ora_d000_oracle19
oracle   48621     1  0 16:02 ?        00:00:00 ora_s000_oracle19
oracle   48623     1  0 16:02 ?        00:00:00 ora_tmon_oracle19
oracle   48657     1  0 16:02 ?        00:00:00 ora_m000_oracle19
oracle   48664     1  0 16:02 ?        00:00:00 ora_p000_oracle19
oracle   48666     1  0 16:02 ?        00:00:00 ora_p001_oracle19
oracle   48668     1  0 16:02 ?        00:00:00 ora_p002_oracle19
oracle   48670     1  0 16:02 ?        00:00:00 ora_tt00_oracle19
oracle   48672     1  0 16:02 ?        00:00:00 ora_arc0_oracle19
oracle   48674     1  0 16:02 ?        00:00:00 ora_tt01_oracle19
oracle   48676     1  0 16:02 ?        00:00:01 ora_arc1_oracle19
oracle   48678     1  0 16:02 ?        00:00:00 ora_arc2_oracle19
oracle   48680     1  0 16:02 ?        00:00:00 ora_arc3_oracle19
oracle   48682     1  0 16:02 ?        00:00:00 ora_tt02_oracle19
oracle   48686     1  0 16:02 ?        00:00:00 ora_aqpc_oracle19
oracle   48688     1  0 16:02 ?        00:00:00 ora_cjq0_oracle19
oracle   48692     1  0 16:02 ?        00:00:00 ora_p003_oracle19
oracle   48694     1  0 16:02 ?        00:00:00 ora_p004_oracle19
oracle   48696     1  0 16:02 ?        00:00:00 ora_p005_oracle19
oracle   48698     1  0 16:02 ?        00:00:00 ora_p006_oracle19
oracle   48700     1  0 16:02 ?        00:00:00 ora_p007_oracle19
oracle   48785     1  0 16:02 ?        00:00:00 ora_w002_oracle19
oracle   48874     1  0 16:02 ?        00:00:01 ora_m002_oracle19
oracle   48904     1  0 16:02 ?        00:00:00 ora_w003_oracle19
oracle   49013     1  0 16:02 ?        00:00:00 ora_w004_oracle19
oracle   49017     1  0 16:02 ?        00:00:00 ora_qm02_oracle19
oracle   49021     1  0 16:02 ?        00:00:00 ora_q002_oracle19
oracle   49023     1  0 16:02 ?        00:00:00 ora_q003_oracle19
oracle   49771     1  0 16:04 ?        00:00:00 ora_m003_oracle19
oracle   53840     1  0 16:12 ?        00:00:00 ora_w005_oracle19
oracle   53974     1  0 16:12 ?        00:00:00 ora_w006_oracle19
oracle   54037     1  0 16:12 ?        00:00:00 ora_w007_oracle19
oracle   56009     1  0 16:17 ?        00:00:00 ora_m004_oracle19
oracle   63935     1  0 16:32 ?        00:00:00 ora_m001_oracle19

오라클이 실행중임

 

 

쉘 실행

1
# sh kill_process.sh

 

 

기존 프로세스 재확인

1
2
# ps -ef | grep ora_ | grep -v grep
(아무것도 나오지 않음)

모두 kill 됨

 

 

참조 :