본문 바로가기
STUDY/ORACLE

Oracle 11일차(2) - 오라클 구조설명

by Anne of Green Galbes 2019. 1. 23.

ADMIN

Instance : background Processes + SGA


1. System Global Area(SGA) : 오라클

○Shared Pool : 가장 많이 사용된 SQL문을 저장

- Shared SQL Area :  첫번째 사용자가 쿼리를 입력하면 컴파일 후 여기에 저장.두번째 사용자의 쿼리가 첫번째 사용자의 쿼리와 똑같으면 Shared SQL Area의 문장을 호출

- Data Dictionary Cache : DB파일, 테이블, 인덱스, 컬럼, 사용자 등등 저장

- Library Cache : 가장 최근에 사용한 SQL과 PL/SQL이 저장되는 공간


○ Database Buffer Cache

- 가장 기본적인 책상

- RECYCLE : 휴지통

- 2K, 4K, 8K : 사용하는 데이터의 저장공간 크기

         자기가 원하는 크기로 만들 수 있음

         기본값 : 8K


○ Redo Log Buffer

- 메모리상에 있음 → 데이터가 날아가는 상황이 발생할 수 있음

- 선기록 후조치

- Database Buffer Cache에서 일어나는 모든 일을 기록

- LGWR(Log Writer)를 통해서 LOG파일로 내려씀


○LRU List

- 가장 오래 전에 메모리상에 올라와서 가장 오랫동안 사용되지 않은 데이터를 저장하는 곳

- 사용은 할 거지만 지금 당장 필요 없는 것들을 올려놓음


○Large Pool / Java Pool : 최근에는 많이 사용하지 않음



2. PGA : 자기만의 공간

프로세스가 연결될 때 할당된다.

○DEDICATED

 - 각각의 사용자에 대해 각각의 전용 서버가 대응

 - 메모리 공간이 많이 필요하다

○NON-DEDICATED



3.프로세스

○User process : 사용자가 오라클 서버에 연결을 요청할 때 시작

○Server process : 오라클 인스턴스에 연결.

○Background processes : 오라클 인스턴스가 실행될 때 시작



4. Backg

round Process : SGA를 도와주는 역할

○SMON(System Monitor)

- 데이터를 일치화 시켜줌

- 인스턴스 복구 수행

- 비정상 종료되었을 때, Redo Log File의 내용을 읽어 DBC에 실행, UNDO의 내용과 비교해 COMMIT 전의 데이터를 일치화

- COMMIT을 할 경우 UNDO에 내용이 저장.


○PMON(Process Monitor)

- 클라이언트의 오류를 바로 잡아주는 역할

서버가 아닌 클라이언트에 문제가 생겼을 경우

- 트랜잭션을 ROLLBACK.

- LOCK을 풀어 줌

- 클라이언트가 정상적으로 종료한 것처럼 만듦

- 연결자를 지우고, 정상적으로 실행 가능하도록 만듦


○DBWn(Database Writer)

- n은 숫자 (예시 : DBW1, DBW2)

- 체크포인트 발생

- Database Buffer Cache의 내용을 DB에 저장


○CKPT

- 중간저장

- DBWn 호출

- 특정번호(키)를 LOG파일과 DATA파일, CONTROL 파일에 저장. DB를 시작할 때, 세 곳의 숫자가 일치해야 실행

- CONTROL01.CTL과 CONTROL02.CTL은 똑같은 파일


○LGWR

- Redo Log Buffer의 내용을 LOG파일로 저장

- COMMIT명령을 할 때 CKPT를 호출, CKPT가 DBWn을 호출 →DATA파일과 LOG파일의 내용이 같도록 동시에 실행

- DBWn이 실행되기 전에, CKPT가 실행되었을 때

- Redo Log Buffer가 1/3이상이 기록되어 있을 때

- 할 일이 없으면 3초마다 실행



5. Archived Log files

로그파일은 그룹으로 되어 있다.

그룹이 꽉 차면 다음 그룹으로 이동, 이때 Archiver Log File에 log내용을 복사,저장한다.

덮어서 작성이 되어도 Archiver Log File로 복구 가능



6. LISTENER

C:\app\itwill\product\11.2.0\dbhome_1\NETWORK\ADMIN

LISTENER를 통해서 오라클에 로그인



7. TNS

C:\app\itwill\product\11.2.0\dbhome_1\NETWORK\ADMIN

DB의 호스트와 위치를 저장.

클라이언트에서 DB에 접속할 때 필요한 내용을 저장

DB파일을 관리. DB의 위치 정보



'STUDY > ORACLE' 카테고리의 다른 글

Oracle 13일차(1) -Redo Log File  (0) 2019.01.24
Oracle 12일차 - Admin  (0) 2019.01.23
Oracle 11일차(1)-패키지,트리거  (0) 2019.01.22
Oracle 10일차(2)-문제  (0) 2019.01.21
Oracle 10일차(1)-DML PROCEDURE, 함수,반복문,예외처리  (0) 2019.01.21

댓글