COMMIT PARAMETER COMMIT PARAMETER 확인방법SQL> show parameter commit; commit_point_strength : 분산 데이터베이스 환경에서 2-phase commit 에서 사용 commit_write : commit 후 LGWR이 REDO LOG FILE에 기록하는 4가지 방식1. WAIT : 변경된 트랜잭셕이 REDO LOG FILE에 기록될 때까지 기다림2. NOWAIT : 변경된 드랜잭션이 REDO LOG FILE에 기록될 때까지 기다리지 않음3. IMMEDIATE : commit 후 즉시 REDO LOG FILE에 기록시작4. BATCH : commit 이 들어와도 일정 시간동안 모아서 한꺼번에 기록 * 보통은 4가지 방식을 2개씩 조합해서 사용한다..
SQL 문장 실행 원리 SQL 문장 실행 원리 3. SHARED POOL의 LIBRARY CACHE 검사해서 실행계획 있는지 확인후 있으면 7번으로~ 5. 여러개의 실행계획을 OPTIMIZER가 만들면 RAW SOURCE GENERATOR 에게 보낸후RSG가 가장 좋은것을 선택한다. 그리고 서버프로세스에게 주면 그것을 LIBRARY CACHE에등록한 후 PGA로 복사해서 가져온 후 6번으로 넘어간다. 셀렉트 문장이 수행되는 4단계의 순서는 PARSE(구문분석)-> BIND(값치환) -> EXECUTE(실행) -> FETCH (인출)이다. PARSE(구문분석)은 SQL문장 실행시 서버프로세스는 유저 프로세스에게 SQL문장을전달받고 SQL PARSER을 통해서 문장에 쓰인 키워드, 컬럼명 등을 분석해서 PA..
UPDATE 실행 원리 UPDATE 실행 원리 select 문장의 실행 단계(parse -> bind -> execute -> fetch) 와 비슷하나 dml(insert, update, delete, merge)문장의 실행단계에는 추출(fetch)단계가 없고 대신 실행(execute)단계가 조금더 복잡하다. 일단 soft parse 하고 실패하면 hard parse해서 서버프로세스는 실행계획을 가지고 library cache에 등록후 실행(execute)를 수행한다. Soft parse에서는 문법검사, 의미검사후 권한검사를 수행하고 shared pool의 library cache에서 실행계획이 있는지 확인한다. 실행계획이 없을 경우 hard parse를 수행해서 옵티마이져에게 실행계획을 생성해달라고 요..
ORACLE BACKGROUND PROCESS ORACLE BACKGROUND PROCESS :ORACLE 서버와 관련된 프로세스 종류는 user process(sql 문장을 서버프로세스로 전달 해주고 결과를 가져오는 프로세스), server process(user process가 전해준 sql문장을 실제 수행하는 프로세스), backgroud process(oracle 서버가 시작되면 자동으로 시작되며 운영과 유지를 담당하는 프로세스) 오라클서버의 시작과 종료와 같고 호빗과 같은 존재이다 필수 ORACLE BACKGROUND PROCESS :- DBWR, LGWR, PMON, SMON, CKPT, MMON & MMNL, RECO 선택 ORACLE BACKGROUND PROCESS :- ARCN, CJQ..
ORACLE 시작, 단계별 INSTANCE OPEN ORACLE 시작 : - ORACLE DATABASE가 OPEN 되어 있어야 DB에 저장되어 있는 정보를 조회하거나 DATA를 입력또는 변경 할 수 있다.- ORACLE 서버를 시작하려면 SYSDBA 권한을 가지고 있는 계정으로 로그인 해야한다.]# sqlplus 아이디/비번 as sysdbaSQL> startup; ORACLE 서버 시작 단계 : 1. NOMOUNT 단계 :- STARTUP 실행시 INSTANCE를 시작하기위해 ORACLE SERVER PROCESS는 가장먼저 PARAMETER FILE을 읽게된다- NOMOUNT 단계에서 PARAMETER FILE에 저장되어 있는 값을 참조하여 SGA와 BACKGROUND - ALTER LOG FILE..