
- 오라클 프로세서의 종류 3가지
1. 유져 프로세서 : 클라이언트 쪽에서 작동하는 프로세서
예: 클라이언트 ------------------------------> 서버(오라클 db)
↓ ↓
유져 프로세서 ----------- SQL ----------> 서버프로세서
2. 데이터 베이스 프로세서:
1) 서버 프로세서 : 유져 프로세서가 건네준 SQL을 처리하는 프로세서
2) 백그라운드 프로세서 : 오라클 DB를 운영하는 프로세서
3) 응용 프로그램 프로세서 : 리스너와 같이 오라클을 운영하기 위해서 필요한 프로세서
select *
from v$bgprocess;
💡 백그라운드 프로세서들이 오라클 db를 운영하고 있음
select *
from v$process
where pname is null;
scott 으로 접속해서 다음과 같이 emp 를 조회하고 다시 위의 쿼리를 실행하세요.

[oracle@ora19c ~]$ lsnrctl status
LSNRCTL for Linux: Version 19.0.0.0.0 - Production on 21-8월 -2025 10:04:45
Copyright (c) 1991, 2019, Oracle. All rights reserved.
(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.13.81)(PORT=1521)))에 연결되었습니다
리스너의 상태
------------------------
별칭 LISTENER
버전 TNSLSNR for Linux: Version 19.0.0.0.0 - Production
시작 날짜 21-8월 -2025 09:58:15
업타임 0 일 0 시간. 6 분. 30 초
트레이스 수준 off
보안 ON: Local OS Authentication
SNMP OFF리스너 매개변수 파일 /u01/app/oracle/product/19.3.0/dbhome_1/network/admin/listener.ora
리스너 로그 파일 /u01/app/oracle/diag/tnslsnr/ora19c/listener/alert/log.xml
끝점 요약 청취 중...
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=192.168.13.81)(PORT=1521)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1521)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcps)(HOST=ora19c)(PORT=5500))(Security=(my_wallet_directory=/u01/app/oracle/admin/ORA19/xdb_wallet))(Presentation=HTTP)(Session=RAW))
서비스 요약...
"ORA19" 서비스는 1개의 인스턴스를 가집니다.
"ORA19" 인스턴스(READY 상태)는 이 서비스에 대해 1 처리기를 가집니다.
"ORA19XDB" 서비스는 1개의 인스턴스를 가집니다.
"ORA19" 인스턴스(READY 상태)는 이 서비스에 대해 1 처리기를 가집니다.
명령이 성공적으로 수행되었습니다
[oracle@ora19c ~]$ vi startup.sql
[oracle@ora19c ~]$
[oracle@ora19c ~]$ cat startup.sql
startup
exit;
[oracle@ora19c ~]$ vi dba.sh
#!/bin/bash
echo -e "
dba 작업을 자동화하는 쉘 스크립트
"
echo -e " ================================= "
echo " "
echo "[1] DB에서 발생한 TX 락을 확인하려면 1번을 누르세요.
[2] DB에서 발생한 악성 SQL을 확인하려면 2번을 누르세요
[3] TOP명령어로 확인한 프로세서 번호로 해당 세션의 정보를 확인하고 싶으면 3번을 누르세요
[4] sys 유져로 접속해서 db를 startup 하려면 4번을 누르세요"
echo " "
echo -n "원하는 작업번호를 누르세요 "
read aa
echo " "
case $aa in
1) sqlplus -s system/oracle_4U @/home/oracle/lock.sql ;;
2) sqlplus -s system/oracle_4U @/home/oracle/bad.sql ;;
3) sqlplus -s system/oracle_4U @/home/oracle/spid.sql ;;
4) sqlplus -s sys/oracle_4U as sysdba @/home/oracle/startup.sql ;;
esac
echo "
~
[oracle@ora19c ~]$ vi dba.sh
#!/bin/bash
echo -e "
dba 작업을 자동화하는 쉘 스크립트
"
echo -e " ================================= "
echo " "
echo "[1] DB에서 발생한 TX 락을 확인하려면 1번을 누르세요.
[2] DB에서 발생한 악성 SQL을 확인하려면 2번을 누르세요
[3] TOP명령어로 확인한 프로세서 번호로 해당 세션의 정보를 확인하고 싶으면 3번을 누르세요
[4] sys 유져로 접속해서 db를 startup 하려면 4번을 누르세요
[5] 리스너를 시작 시키려면 5번을 누르세요"
echo " "
echo -n "원하는 작업번호를 누르세요 "
read aa
echo " "
case $aa in
1) sqlplus -s system/oracle_4U @/home/oracle/lock.sql ;;
2) sqlplus -s system/oracle_4U @/home/oracle/bad.sql ;;
3) sqlplus -s system/oracle_4U @/home/oracle/spid.sql ;;
4) sqlplus -s sys/oracle_4U as sysdba @/home/oracle/startup.sql ;;
5) lsnrctl start ;;
esac
echo " "