492
Oracle9i Database Administration Fundamentals I(䚐ἴ䑄 䚐ἴ䑄 䚐ἴ䑄 䚐ἴ䑄) 䚍㈑㟝 䚍㈑㟝 䚍㈑㟝 䚍㈑㟝 ⸰⪜ ⸰⪜ ⸰⪜ ⸰⪜ 1 D11321KR11 㥐䖼 1.1 20023D34482

cfs1.tistory.comcfs1.tistory.com/upload_control/download.blog?fhandle=YmxvZzM5… · 머리말 I 소개 과정목표I-2 Oracle9i Enterprise Edition I-3 데이터베이스관리자작업

  • Upload
    others

  • View
    4

  • Download
    0

Embed Size (px)

Citation preview

  • Oracle9i Database Administration Fundamentals I(������������)������������ • �������� 1

    D11321KR11�� 1.12002� 3�D34482

  • ������������

    Marie St. Gelais

    S Matt Taylor Jr

    �������� ������������

    Paulo Barqueira

    Charles Fabrie

    Lilian Hobbs

    Dominique Jeunot

    Donna Keesling

    Simon Law

    Howard Ostrow

    Ashesh Parekh

    Gabriela Stanescu

    ����

    John B Dawson

    Copyright © Oracle Corporation, 2001. All rights reserved.

    ���� Oracle Corp.������������. ������������������� !"#$�%&'()�*"�+

    ,-��. �./012�3456��27��89:�&2����. ����;

  • 머리말머리말머리말머리말

    I 소개소개소개소개과정목표 I-2Oracle9i Enterprise Edition I-3데이터베이스관리자작업 I-4

    1 Oracle 구조구조구조구조 구성구성구성구성 요소요소요소요소목표 1-2주요구성요소개요 1-3Oracle 서버 1-5Oracle 인스턴스 1-6접속설정및세션생성 1-7오라클데이터베이스 1-9물리적구조 1-10메모리구조 1-11시스템글로벌영역 1-12공유풀 1-15라이브러리캐시 1-16데이터딕셔너리캐시 1-17데이터베이스버퍼캐시 1-18리두로그버퍼 1-21대용량풀 1-22Java 풀 1-24프로그램글로벌영역 1-25프로세스구조 1-28사용자프로세스 1-29서버프로세스 1-30백그라운드프로세스 1-31DBWn(데이터베이스기록자) 1-32LGWR(로그기록자) 1-33SMON(시스템모니터) 1-34PMON(프로세스모니터) 1-35CKPT(체크포인트) 1-36ARCn(아카이버) 1-37논리적구조 1-39SQL 문 처리 1-42요약 1-44연습 1 개요 1-45

    ��������

    iii

  • 2 Oracle 서버서버서버서버 시작시작시작시작목표 2-2데이터베이스관리도구 2-3Oracle Universal Installer 2-4Universal Installer 시작 2-5응답파일을사용한비대화식설치 2-6Oracle Database Configuration Assistant 2-9데이터베이스관리자 2-10SQL*Plus 2-11Oracle Enterprise Manager 2-12Oracle Enterprise Manager - 구조 2-13콘솔 2-15요약 2-17연습 2 개요 2-18

    3 Oracle 인스턴스인스턴스인스턴스인스턴스 관리관리관리관리목표 3-2초기화매개변수파일 3-3PFILE initSID.ora 3-6PFILE생성 3-7PFILE예제 3-8SPFILE spfileSID.ora 3-9SPFILE생성 3-10SPFILE예제 3-13STARTUP명령동작 3-14SPFILE에서매개변수수정 3-15데이터베이스시작 NOMOUNT 3-19데이터베이스시작 MOUNT 3-20데이터베이스시작 OPEN 3-21STARTUP명령 3-22ALTER DATABASE명령 3-25제한모드로데이터베이스열기 3-26읽기전용모드로데이터베이스열기 3-29데이터베이스종료 3-31Shutdown 옵션 3-32진단파일을사용한인스턴스모니터 3-36경고로그파일 3-37백그라운드추적파일 3-39사용자 추적 파일 3-40

    iv

  • 사용자추적활성화또는비활성화 3-41요약 3-43연습 3 개요 3-44

    4 데이터베이스데이터베이스데이터베이스데이터베이스 생성생성생성생성목표 4-2데이터베이스관리및구성 4-3OFA(Optimal Flexible Architecture) 4-4Oracle 소프트웨어및파일위치 4-5생성필요조건 4-6데이터베이스관리자를위한인증방법 4-7암호파일인증사용 4-8데이터베이스생성 4-10운영체제환경 4-11Database Configuration Assistant 4-12Database Configuration Assistant를사용하여데이터베이스생성 4-13수동으로데이터베이스생성 4-17데이터베이스생성 4-20OMF(Oracle Managed Files)를 사용하여데이터베이스생성 4-23문제해결 4-27데이터베이스생성후 4-28요약 4-29연습 4 개요 4-30

    5 데이터데이터데이터데이터 딕셔너리딕셔너리딕셔너리딕셔너리 및및및및 동적동적동적동적 성능성능성능성능 뷰뷰뷰뷰 사용사용사용사용목표 5-2내장데이터베이스객체 5-3데이터딕셔너리 5-4기본테이블및데이터딕셔너리뷰 5-5데이터딕셔너리뷰생성 5-6데이터딕셔너리내용 5-7데이터딕셔너리사용방법 5-8데이터딕셔너리뷰범주 5-9데이터딕셔너리예제 5-11동적성능테이블 5-12동적성능테이블예제 5-13관리스크립트이름지정규칙 5-15요약 5-16연습 5 개요 5-17

    v

  • 6 제어제어제어제어 파일파일파일파일 유지유지유지유지 관리관리관리관리목표 6-2제어파일 6-3제어파일내용 6-5제어파일다중화 6-7SPFILE사용 시 제어 파일 다중화 6-8PFILE사용 시 제어 파일다중화 6-9OMF로 제어파일 관리 6-10제어파일정보얻기 6-11요약 6-14연습 6 개요 6-15

    7 리두리두리두리두 로그로그로그로그 파일파일파일파일 유지유지유지유지 관리관리관리관리목표 7-2리두로그파일사용 7-3리두로그파일구조 7-4리두로그파일작동방법 7-6로그스위치및체크포인트시행 7-8온라인리두로그파일그룹추가 7-9온라인리두로그파일멤버추가 7-10온라인리두로그파일그룹삭제 7-12온라인리두로그파일멤버삭제 7-13온라인리두로그파일재배치또는이름바꾸기 7-15온라인 리두 로그 파일구성 7-17OMF를사용하여온라인리두로그파일관리 7-19그룹및멤버 정보 얻기 7-20아카이브된리두로그파일 7-22요약 7-26연습 7 개요 7-27

    8 테이블스페이스테이블스페이스테이블스페이스테이블스페이스 및및및및 데이터데이터데이터데이터 파일파일파일파일 관리관리관리관리목표 8-2테이블스페이스및데이터파일 8-3테이블스페이스유형 8-4테이블스페이스생성 8-5테이블스페이스의영역관리 8-9지역적으로관리되는테이블스페이스 8-10딕셔너리관리테이블스페이스 8-12실행취소테이블스페이스 8-13임시테이블스페이스 8-14

    vi

  • 기본임시테이블스페이스 8-17기본임시테이블스페이스생성 8-18기본임시테이블스페이스의제한사항 8-21읽기전용테이블스페이스 8-22테이블스페이스오프라인설정 8-25저장영역설정변경 8-28테이블스페이스크기조정 8-30데이터파일의자동확장활성화 8-31수동으로데이터파일크기조정 8-34테이블스페이스에데이터파일추가 8-35데이터파일이동방식 8-37테이블스페이스삭제 8-40OMF를사용하여테이블스페이스관리 8-43OMF를사용하여테이블스페이스관리 8-44테이블스페이스정보얻기 8-45요약 8-46연습 8 개요 8-47

    9 저장저장저장저장 영역영역영역영역 구조구조구조구조 및및및및 관계관계관계관계목표 9-2저장영역및관계구조 9-3세그먼트유형 9-4저장영역절우선순위 9-8확장영역할당및할당해제 9-9사용된확장영역및사용가능한확장영역 9-10데이터베이스블록 9-11다중블록크기지원 9-12표준블록크기 9-13비표준 블록 크기 9-14비표준블록크기테이블스페이스생성 9-16다중블록크기조정규칙 9-18데이터베이스블록내용 9-19블록공간활용매개변수 9-20데이터 블록 관리 9-22자동세그먼트공간관리 9-23자동세그먼트공간관리구성 9-25수동데이터블록관리 9-26블록공간사용 9-27저장영역정보얻기 9-29요약 9-32연습 9 개요 9-33

    vii

  • 10 실행실행실행실행 취소취소취소취소 데이터데이터데이터데이터 관리관리관리관리목표 10-2실행취소데이터관리 10-3실행취소세그먼트 10-4실행취소세그먼트: 용도 10-5읽기일관성 10-6실행취소세그먼트유형 10-7자동실행취소관리: 개념 10-9자동실행취소관리: 구성 10-10자동실행취소관리: 초기화 매개변수 10-11자동실행취소관리: UNDO테이블스페이스 10-12자동실행취소관리: UNDO테이블스페이스변경 10-14자동실행취소관리: UNDO테이블스페이스전환 10-16자동실행취소관리: UNDO테이블스페이스삭제 10-18자동실행취소관리: 기타매개변수 10-21실행취소데이터통계 10-23자동실행취소관리: UNDO테이블스페이스크기조정 10-24자동실행취소관리: Undo Quota 10-26실행취소세그먼트정보얻기 10-27요약 10-29연습 10 개요 10-30

    11 테이블테이블테이블테이블 관리관리관리관리목표 11-2사용자데이터저장 11-3Oracle 내장데이터유형 11-6ROWID형식 11-10행의구조 11-12테이블생성 11-13테이블생성: 지침 11-17임시테이블생성 11-18PCTFREE및 PCTUSED설정 11-19행이전및체인화 11-20저장영역및블록활용매개변수변경 11-21확장영역수동할당 11-24분할되지않은테이블재구성 11-25테이블자르기 11-26테이블삭제 11-27열삭제 11-29UNUSED옵션사용 11-31

    viii

  • 테이블 정보 얻기 11-33요약 11-35연습 11 개요 11-36

    12 인덱스인덱스인덱스인덱스 관리관리관리관리목표 12-2인덱스분류 12-3B 트리인덱스 12-5비트맵인덱스 12-7B 트리인덱스와비트맵인덱스비교 12-9일반 B 트리인덱스생성 12-10인덱스생성: 지침 12-13비트맵인덱스생성 12-15인덱스 저장 영역 매개변수 변경 12-18인덱스공간할당및할당해제 12-20인덱스재구축 12-21온라인으로인덱스재구축 12-23인덱스병합 12-24인덱스및유효성검사 12-25인덱스삭제 12-27사용되지않은인덱스식별 12-29인덱스 정보 얻기 12-30요약 12-31연습 12 개요 12-32

    13 데이터데이터데이터데이터 무결성무결성무결성무결성 유지유지유지유지 관리관리관리관리목표 13-2데이터무결성 13-3제약조건유형 13-5제약조건상태 13-6제약조건검사 13-8제약조건을 Immediate 또는 Deferred Constraint로정의 13-9기본및고유키시행 13-10외래키고려사항 13-11테이블생성중제약조건정의 13-13제약조건정의지침 13-17제약조건활성화 13-18EXCEPTIONS테이블사용 13-23제약조건정보얻기 13-26요약 13-29연습 13 개요 13-30

    ix

  • 14 암호암호암호암호 보안보안보안보안 및및및및 자원자원자원자원 관리관리관리관리목표 14-2프로파일 14-3암호관리 14-5암호관리활성화 14-6암호계정잠금 14-7암호만기일 기능 및 암호만기 14-8암호기록 14-9암호확인 14-10사용자제공암호함수 14-11VERIFY_FUNCTION암호확인함수 14-12프로파일생성: 암호설정 14-13프로파일변경: 암호설정 14-17프로파일삭제: 암호설정 14-19자원관리 14-21자원제한활성화 14-22세션레벨에서자원제한설정 14-23호출레벨에서자원제한설정 14-24프로파일생성: 자원제한 14-25Database Resource Manager를사용하여자원관리 14-28자원계획지시어 14-31암호 및자원 제한 정보얻기 14-33요약 14-35연습 14 개요 14-36

    15 사용자사용자사용자사용자 관리관리관리관리목표 15-2사용자및보안 15-3데이터베이스스키마 15-5사용자생성점검목록 15-6새로운사용자생성: 데이터베이스인증 15-7새로운사용자생성: 운영체제인증 15-10테이블스페이스의사용자할당량변경 15-12사용자삭제 15-14사용자 정보 얻기 15-16요약 15-17연습 15 개요 15-18

    x

  • 16 권한권한권한권한 관리관리관리관리목표 16-2권한관리 16-3시스템권한 16-4시스템권한: 예제 16-5시스템 권한 부여 16-6SYSDBA권한과 SYSOPER권한 16-8시스템권한제한사항 16-9시스템 권한 취소 16-10ADMIN OPTION을사용하여시스템권한취소 16-12객체권한 16-13객체권한부여 16-14객체권한취소 16-17WITH GRANT OPTION을 사용하여객체권한취소 16-20권한정보얻기 16-21요약 16-22연습 16 개요 16-23

    17 롤롤롤롤 관리관리관리관리목표 17-2롤 17-3롤의이점 17-4롤생성 17-5미리정의된롤 17-7롤수정 17-8롤할당 17-10기본롤설정 17-13응용프로그램롤 17-15롤활성화및비활성화 17-16사용자의롤취소 17-19롤제거 17-21롤생성지침 17-23암호및기본롤사용지침 17-24롤정보얻기 17-25요약 17-26연습 17 개요 17-27

    18 감사감사감사감사목표 18-2감사 18-3감사지침 18-4

    xi

  • 감사범주 18-6데이터베이스감사 18-8감사옵션 18-10감사정보얻기 18-12감사레코드정보얻기 18-13요약 18-14연습 18 개요 18-15

    19 데이터베이스에데이터베이스에데이터베이스에데이터베이스에 데이터데이터데이터데이터로드로드로드로드목표 19-2데이터 로드 방식 19-3직접로드 19-4직렬직접로드 19-6병렬직접로드 19-7SQL*Loader 19-9SQL*Loader 사용 19-11SQL*Loader 제어 파일 19-13제어파일구문고려사항 19-17입력데이터및데이터파일 19-18논리적레코드 19-22로드방식 19-23직접경로로드와기본경로로드비교 19-26병렬직접경로로드 19-28데이터변환 19-29폐기되거나거부된레코드 19-30로그파일내용 19-34SQL*Loader 지침 19-36요약 19-37연습 19 개요 19-38

    20 Globalization Support 사용사용사용사용목표 20-2Globalization Support 기능 20-3암호화체계 20-5데이터베이스문자집합및국가별문자집합 20-8오라클데이터베이스문자집합선택지침 20-9Oracle 국가별문자집합선택지침 20-11유니코드솔루션선택: 유니코드데이터베이스 20-12유니코드솔루션선택: 유니코드데이터유형 20-13

    xii

  • 언어종속기능지정 20-14서버에대한언어종속기능지정 20-15종속언어및영역기본값 20-16세션에대한언어종속기능지정 20-18클라이언트-서버구조의문자집합 20-19세션에대한언어종속기능지정 20-21언어정렬 20-22NLS 정렬 20-23SQL 함수에서의 NLS 매개변수사용 20-26언어인덱스지원 20-30NLS를사용한데이터임포트및로드 20-31문자집합정보얻기 20-32NLS 설정정보얻기 20-33SQL 함수에서의 NLS 매개변수사용 20-37요약 20-38연습 20 개요 20-39

    A UNIX 환경에서환경에서환경에서환경에서 Oracle9i 데이터베이스데이터베이스데이터베이스데이터베이스 생성생성생성생성 방법방법방법방법

    B 실행실행실행실행 취소취소취소취소 데이터데이터데이터데이터 수동수동수동수동 관리관리관리관리(롤백롤백롤백롤백 세그먼트세그먼트세그먼트세그먼트)

    C SQL*Plus용용용용 연습연습연습연습 해답해답해답해답

    D Oracle Enterprise Manager용용용용 연습연습연습연습 해답해답해답해답

    xiii

  • xiv

  • ������������

  • ������������ - 2

    ����������������

    이과정은 DBA(오라클데이터베이스관리자)가기본관리작업을수행함에있어확고한기초를다질수있도록도와주는데그목적을두고있습니다. 이과정의주요목표는오라클데이터베이스의설정, 유지관리, 문제해결에필요한지식과기술을제공하는데있습니다. 이과정은데이터베이스관리자, 기술지원분석자, 시스템관리자, 응용프로그램개발자, MIS 관리자및기타오라클사용자를위해구성되었습니다.이머리말은다음부분에대해설명합니다.

    • 시작하기전에• 필요조건• 과정구성• 관련서적• 표기법

    시작하기시작하기시작하기시작하기 전에전에전에전에

    이과정에참여함으로써최대한의성과를얻으려면다음과같은구체적인지식을갖고있어야합니다.

    • 관계형데이터베이스의개념에대한기본적인이해• SQL, SQL*Plus 및 OS 명령(Unix 및 NT)에대한전반적인지식• 기본적인운영체제관련지식• Oracle 환경에서의작업경험

    필요필요필요필요 조건조건조건조건

    • Oracle 소개과정과정과정과정 구성구성구성구성

    Oracle 9i Database Administration Fundamentals I은강사가지도하는과정으로서강의와실질적인연습문제로구성되며 SQL*Plus 또는 OEM(Oracle Enterprise Manager)을사용하여연습을수행할수있습니다. 또한이 과정에는 Oracle Certified Professional 시험을준비할수있도록목표가명확하게정의되어있습니다.

  • ������������ - 3

    �������� ��������

    Oracle 참고참고참고참고 서적서적서적서적제목제목제목제목 제품제품제품제품 번호번호번호번호

    Oracle9i Backup and Recovery Concepts A90133-02Oracle9i Database Administrator's Guide A90117-01Oracle9i Database Concepts A88856-02Oracle9i Database Error Messages A90202-02Oracle9i Database New Features A90120-02Oracle9i Database Reference A90190-02Oracle9i Database Utilities A90192-01Oracle9i Enterprise Manager Administrator’s Guide A88767-02Oracle9i Enterprise Manager Concepts Guide A88770-01Oracle9i Enterprise Manager Configuration Guide A88769-01Oracle9i Net Services Administrator’s Guide A90154-01Oracle9i Net Services Reference Guide A90155-01Oracle9i Recovery Manager Reference A90136-02Oracle9i Recovery Manager User’s Guide A90135-01Oracle9i Database Reference A90190-02Oracle9i SQL Reference A90125-01Oracle9i User-Managed Backup and Recovery Guide A90134-01참고참고참고참고 서적서적서적서적

    • System release bulletins• Installation and user’s guides• read.me 파일• International Oracle User’s Group (IOUG) articles• Oracle Magazine

  • ������������ - 4

    ����

    텍스트텍스트텍스트텍스트 안의안의안의안의 표기법표기법표기법표기법

    �������� �������� ��������

    굵은체기울임꼴

    용어(용어집이 있는경우)

    알고리즘알고리즘알고리즘알고리즘은 새 키를 삽입합니다.

    대문자와소문자

    버튼, 확인란, 트리거, 창

    Executable 버튼을누릅니다.Can't Delete Card 확인란을선택합니다.When-Validate-Item 트리거를ORD 블록에할당합니다.Master Schedule 창을엽니다.

    Courier new,대소문자 구분(기본값은소문자)

    코드출력,디렉토리이름,파일이름,암호,경로이름,URL, 사용자입력, 사용자이름

    코드 출력: debug.set(‘I” 300);

    디렉토리: bin (DOS), $FMHOME (UNIX)파일 이름: init.ora 파일을 찾습니다.암호: 사용자 암호로 tiger를 사용합니다.경로 이름: c:\my_docs\projects를 엽니다.URL: Go to http://www.oracle.com사용자 입력: 300을 입력합니다.사용자 이름: scott으로 로그인합니다.

    머리 글자 그래픽 레이블(용어가고유 명사가 아닌 경우)

    고객 주소(Oracle Payables 제외)

    기울임꼴 강조된 단어 또는문구, 책 및과정제목,변수

    데이터베이스에 변경 내용을 저장하지 마십시오.

    자세한 사항은 Oracle7 Server SQL LanguageReference Manual을 참조하십시오.

    [email protected]을 입력하십시오.여기에서 user_id는 사용자의 이름입니다.

    따옴표 머리 글자 하나가 포함된 이름이 긴 인터페이스 요소 또는 상호 참조가 되어 있는 단원이나장 제목

    "Include a reusable module component"를선택한후 Finish를누릅니다.

    이주제는 II부 3단원에서 "객체사용"에서설명합니다.

    대문자 SQL 열 이름, 명령, 함수, 스키마, 테이블이름

    SELECT 명령을사용하여 EMP 테이블의LAST_NAME 열에저장된정보를봅니다.

  • ������������ - 5

    코드코드코드코드 안의안의안의안의 표기법표기법표기법표기법

    규칙규칙규칙규칙 요소요소요소요소 예제예제예제예제

    화살표 메뉴 경로 File > Save를선택합니다.

    쉼표 키 시퀀스 키를 한번에하나씩 눌렀다뗍니다.[Alternate], [F], [D]

    더하기기호(+)

    키 조합 이키들을동시에누릅니다.[Ctrl]+[Alt]+[Del]

    규칙규칙규칙규칙 요소요소요소요소 예제예제예제예제

    대문자와소문자

    Oracle Forms 트리거

    When-Validate-Item

    소문자 열 이름테이블 이름

    SELECT last_nameFROM s_emp;

    암호 DROP USER scottIDENTIFIED BY tiger;

    PL/SQL 객체 OG_ACTIVATE_LAYER

    (OG_GET_LAYER (‘prod_pie_layer’)

    소문자기울임꼴

    구문 변수 CREATE ROLE role

    대문자 SQL 명령 및 함수 SELECT useridFROM emp;

  • ������������ - 6

  • Copyright © Oracle Corporation, 2001. All rights reserved.

    ��������

  • Oracle9i Database Administration Fundamentals I I-2

    I-2 Copyright © Oracle Corporation, 2001. All rights reserved.

    �������� ��������

    ���� ������������ ������������ �������� ��������

    ����������������

    • Oracle ������������ ������������ �������� �������� ��������• ������������ ��� �!��� �!��� �!��� �! "#�"#�"#�"#� $%$%$%$%• &'&'&'&' ��� �!��� �!��� �!��� �! (�(�(�(�• ������������ )*)*)*)* +,+,+,+,-.-.-.-./0/0/0/0 12121212 +,+,+,+,-.-.-.-.������������ +,+,+,+,-.-.-.-.3�4!5�!3�4!5�!3�4!5�!3�4!5�!-.-.-.-.6278627862786278-.-.-.-.9:9:9:9: ';';';'; />/

    • ?@A?@A?@[email protected]�B�B�B� />/• Globalization Support DEDEDEDE ?@?@?@?@

    �������� ��������

    이과정은핵심데이터베이스관리자의작업에대해다루는일련의과정중첫번째과정입니다. 이과정에서다루는작업은다음과같습니다.

    • Oracle 구조소개

    • 데이터베이스계획및생성

    • 메모리, 프로세스, 물리적구조및논리적구조관리

    • 데이터베이스사용자의작업제어및모니터를통한데이터베이스사용자관리

    • Globalization Support 기능사용

  • Oracle9i Database Administration Fundamentals I I-3

    Oracle9i Enterprise Edition������������Oracle9i Enterprise Edition은뛰어난확장성을가졌으며관리하기쉬운객체관계형데이터베이스입니다. 이과정에서는기본 Enterprise Edition의관리에 대해설명하지만다음옵션은추가기능을제공합니다.

    • 분할: 대규모의확장형응용프로그램구축을위한기능을제공합니다. 기본Enterprise Edition에서 가능했던것보다더작은단위로테이블과인덱스를제어할수있습니다.

    • Real Application Clusters: 여러오라클소프트웨어가하나의데이터베이스를액세스할수있도록허용함으로써데이터베이스의확장성과가용성을향상시킵니다.

    • Oracle Enterprise Manager Packs: Oracle Enterprise Manager의상단에생성됩니다. Oracle Enterprise Manager Diagnostics, Tuning 및 Change Management Packs는DBA에게오라클환경의고급진단, 모니터, 조정및변경관리를위한일련의도구를제공하는추가제품입니다.

    • 고급보안: 암호화와데이터무결성검사를통해서버간또는클라이언트와서버간의보안기능을제공하며협력회사의보안서비스를통해사용자인증서비스를향상시킵니다.

    주주주주: 옵션을사용하려면라이센스를구입해야합니다.

    I-3 Copyright © Oracle Corporation, 2001. All rights reserved.

    Oracle9i Enterprise Edition

    ��������

    Oracle EnterpriseManager Packs �������� ��������

    Real Application Clusters

  • Oracle9i Database Administration Fundamentals I I-4

    ������������������������ ������������

    데이터베이스관리자는서버에서사용자요구를처리할수있도록 Oracle 서버를유지관리하는역할을담당합니다. Oracle 서버를 효율적으로유지관리하려면 Oracle 구조를이해해야합니다. 이과정에서는 Oracle 구조에 대한개요를설명하고데이터베이스계획및생성, 데이터베이스가용성관리, 메모리관리, 물리적및논리적구조, 사용자및권한관리등과같은관리자작업을주로다룹니다.

    다른다른다른다른 과정에서과정에서과정에서과정에서 설명할설명할설명할설명할 데이터베이스데이터베이스데이터베이스데이터베이스 관리자관리자관리자관리자 작업작업작업작업:다른과정에서는다음과같은작업을설명합니다.

    • Oracle9i Database Administration Fundamentals II (한글판)의백업및 복구

    • Oracle9i Database Administration Fundamentals II (한글판)의네트워크 관리

    • Oracle9i Database Performance Tuning (한글판)의데이터베이스조정

    I-4 Copyright © Oracle Corporation, 2001. All rights reserved.

    ������������������������ ������������

    • ������������������������ �������� ����

    • ������������������������ �������� ����• ������������ ���� ������������ �������� ����• ������������ �������� �������� �������� ����• �������� ����• �� !�� !�� !�� ! ����• "#"#"#"# ���� $�$�$�$�• ������������������������ �%�%�%�%

  • Copyright © Oracle Corporation, 2001. All rights reserved.

    Oracle �������� �������� ��������

  • Oracle9i Database Administration Fundamentals I 1-2

    1-2 Copyright © Oracle Corporation, 2001. All rights reserved.

    ��������

    ��������������������������������������������

    ������������.• Oracle ����������������������������������������������������• Oracle ������������������������������ �� �� �� !"#!"#!"#!"#$%&$%&$%&$%&��������'('('('(

    ��������

    이 단원에서는 데이터베이스 연결 설정, 세션 생성 및 SQL 명령 실행에 관련된 메모리, 프로세스, 물리적 및 논리적 구조를 통해 Oracle 서버 구조를 소개합니다.

  • Oracle9i Database Administration Fundamentals I 1-3

    �������� �������� �������� ��������

    Oracle 구조에는여러 가지주요구성요소가있는데이러한구성요소에대해서는이단원의뒷부분에서설명합니다.

    • Oracle 서버: Oracle 서버에는여러개의파일, 프로세스, 메모리구조가있지만이모두가 SQL 문을처리하는 데사용되는것은아닙니다. 그중일부는데이터베이스성능을향상시키거나, 소프트웨어또는하드웨어오류발생시데이터베이스를복구하거나, 데이터베이스를유지관리하는데필요한작업을수행합니다. Oracle 서버는 Oracle 인스턴스와오라클데이터베이스로구성됩니다.

    • Oracle 인스턴스: Oracle 인스턴스는백그라운드프로세스와메모리구조의조합으로데이터베이스의데이터를액세스하려면인스턴스가시작되어야합니다. 인스턴스가시작될때마다 SGA(시스템글로벌영역)가할당되고 Oracle 백그라운드프로세스가시작됩니다. 백그라운드프로세스는프로세스를호출하기위한기능을수행합니다. 백그라운드프로세스를사용하여각사용자가실행하는여러 Oracle 프로그램으로처리해야할기능을통합할수있습니다. 백그라운드프로세스는 I/O을 수행하고다른Oracle 프로세스를모니터하여병렬화를높임으로써성능및신뢰도를향상시킵니다.

    • 오라클데이터베이스: 데이터베이스정보를위한실제적인물리적저장영역을제공하는운영체제파일(데이터베이스파일이라고도함)로구성됩니다. 데이터베이스파일은데이터를일관성있게유지하고인스턴스가실패한경우데이터를복구하는데사용됩니다.

    1-3 Copyright © Oracle Corporation, 2001. All rights reserved.

    ����������������

    �������� �������� �������� ����

    ����������������

    SGA

    ����������������

    ��������

    ����������������������������

    ��������

    ��������������������

    ��������

    DBWRSMONPMON CKPTLGWR ��������

    ������������

    ����������������

    ����

    ����������������

    PGA

    ! ! ! !����������������������������

    ������������������������

    ���"�����"�����"�����"��

    ��������

    Java

    #�$#�$#�$#�$

    %&'(%&'(%&'(%&'(�������� )*��+)*��+)*��+)*��+

    ����������������

    ����������������

    ��������

  • Oracle9i Database Administration Fundamentals I 1-4

    �������� �������� �������� ��������(��������)

    • 기타키파일: 비데이터베이스파일은인스턴스를구성하고권한이있는사용자를인증하며디스크고장시데이터베이스를복구하는데사용됩니다.

    • 사용자프로세스및서버프로세스: SQL 문이 실행될때사용되는기본프로세스이지만그밖의여러프로세스가 Oracle 서버에서 SQL 문의처리를마칠 수있도록도와줍니다.

    • 기타프로세스: 그밖에도여러프로세스가고급대기열처리, Real Application Clusters, 공유서버, 고급복제와같은옵션에사용됩니다. 이러한프로세스에대해서는해당단원에서다룹니다.

  • Oracle9i Database Administration Fundamentals I 1-5

    Oracle

    데이터베이스서버는정보를관리하는데핵심적인역할을수행합니다. 일반적으로서버는다중사용자환경에서많은양의데이터를안정적으로관리하여여러사용자가동일한데이터에동시에액세스할수있게해야하지만이러한작업으로인해성능이저하되는일은없어야합니다. 또한권한없는액세스를방지하고실패복구를위한효율적인해결책을제공해야합니다.

    1-5 Copyright © Oracle Corporation, 2001. All rights reserved.

    Oracle ��������

    Oracle ��������:• ������������������������������������������������������������������������������������

    ������������������������� ����� ����� ����� .• Oracle !�"�#!�"�#!�"�#!�"�#$%&$%&$%&$%&��������������������'()� '()� '()� '()� .

    Oracle Server

  • Oracle9i Database Administration Fundamentals I 1-6

    Oracle ������������Oracle 인스턴스는 SGA(시스템글로벌영역) 메모리구조와데이터베이스관리에사용되는백그라운드프로세스로구성됩니다. 인스턴스는각운영체제에지정된방식에따라다릅니다. 인스턴스는한번에하나씩데이터베이스를열어사용할수있습니다.

    1-6 Copyright © Oracle Corporation, 2001. All rights reserved.

    Oracle ����������������

    Oracle !�"�!�"�!�"�!�"�:• $%&$%&$%&$%&��������������������*+�,�*+�,�*+�,�*+�,��-�� �-�� �-�� �-�� .• ././././0000121212120000�3�3�3�3����4����4����4����45� 5� 5� 5� .• 67�#67�#67�#67�#89%:;89%:;89%:;89%:;

  • Oracle9i Database Administration Fundamentals I 1-7

    �������� �������� ���� �������� ����

    사용자가 SQL 문을오라클데이터베이스에보내려면먼저인스턴스에접속해야합니다.

    • SQL*Plus와같은툴을시작하거나 Oracle Forms 등의툴을사용하여개발된응용프로그램을실행합니다. 이러한응용프로그램이나툴은사용자프로세스로실행됩니다.

    • 대부분의기본구성에서는사용자가 Oracle 서버에로그인할때 Oracle 서버를실행중인시스템에서프로세스가생성되는데이프로세스를서버프로세스라고합니다. 서버프로세스는클라이언트에서실행되는사용자프로세스대신 Oracle 인스턴스와통신하며사용자대신 SQL 문을실행합니다.

    접속접속접속접속:

    접속은사용자프로세스와 Oracle 서버간의 통신경로로서데이터베이스사용자는다음세방법중하나로 Oracle 서버에접속할수있습니다.

    • Oracle 인스턴스를실행하는운영체제에로그인하고해당시스템에있는데이터베이스를액세스하는응용프로그램이나툴을시작합니다. 통신경로는호스트운영체제에서사용가능한프로세스간의통신방식을사용하여설정됩니다.

    1-7 Copyright © Oracle Corporation, 2001. All rights reserved.

    �������� �������� ���� �������� ����

    Oracle ����������������������������• ��������������������• ������������

    ����������������

    ����������������������������

    ��������

    ��������

    ��������

    ������������������������

    Oracle ��������

  • Oracle9i Database Administration Fundamentals I 1-8

    �������� �������� ���� �������� ����

    접속접속접속접속(계속계속계속계속)• 사용자는지역컴퓨터에있는응용프로그램이나툴을시작한다음네트워크를통해

    Oracle 인스턴스를실행하는컴퓨터에접속합니다. 이러한클라이언트서버구성에서는네트워크소프트웨어가사용자와 Oracle 서버간의통신에사용됩니다.

    • 3계층접속에서사용자컴퓨터는네트워크를통해 Oracle 인스턴스를 실행중인시스템에있는응용프로그램이나네트워크서버와통신합니다. 예를들어, 사용자가네트워크에접속된컴퓨터에서브라우저를실행하여 Windows NT 서버에설치되어있는응용프로그램을사용하면이응용프로그램이 UNIX 호스트에서 실행중인오라클데이터베이스에서데이터를검색합니다.

    세션세션세션세션

    세션이란 Oracle 서버에 특정사용자가접속하는것으로 Oracle 서버에서사용자를검증할때시작되어사용자가로그아웃하거나비정상적으로종료될때끝납니다. 데이터베이스사용자가여러툴, 응용프로그램또는터미널에서동시에로그인하면여러세션을동시에사용할수있습니다. 일부전문적인데이터베이스관리툴을사용할때를제외하고는데이터베이스세션을시작하려면 Oracle 서버를 사용할수있어야합니다.주주주주: 여기서설명한것과같이사용자프로세스와서버프로세스간에일대일로대응하는접속을전용서버접속이라고합니다. 공유서버구성을사용하면여러사용자프로세스가서버프로세스를공유할수있습니다.

  • Oracle9i Database Administration Fundamentals I 1-9

    �������� ��������������������

    데이터베이스의일반적인용도는관련정보를저장하고검색하는것이며오라클데이터베이스에는논리적구조와물리적구조가있습니다. 데이터베이스의물리적구조란데이터베이스에있는운영체제파일집합을말합니다. 오라클데이터베이스는다음세가지유형의파일로구성됩니다.

    • 데이터베이스의실제데이터가포함된데이터파일• 장애가발생했을때데이터를복구할수있도록데이터베이스의변경사항이기록된

    리두로그파일

    • 데이터베이스무결성을유지관리하고확인하는데필요한정보가포함된제어파일

    기타기타기타기타 키키키키 파일파일파일파일 구조구조구조구조

    Oracle 서버는데이터베이스에속하지않는기타파일도사용합니다.• 매개변수파일에는 Oracle 인스턴스의특성이 정의됩니다. 예를들어, 이파일에는

    SGA에있는일부메모리구조의크기를지정하는매개변수가포함됩니다.• 암호파일은사용자가 Oracle 인스턴스를시작하고종료할수있다는것을인증합니

    다.• 아카이브된리두로그파일은매체고장시복구하는데필요한리두로그파일의오

    프라인복사본입니다.

    1-9 Copyright © Oracle Corporation, 2001. All rights reserved.

    �������� ��������������������

    ������������������������������������

    • ��������������������������� ��� ��� ��� ������������!"#$%!"#$%!"#$%!"#$%.• ����&'&'&'&'()()()()*+,�*+,�*+,�*+,�-�.$%-�.$%-�.$%-�.$%.

    ����������������

    ������������������������

    ���� ���� ���� ����

    �!�!�!�!��������

    "#"#"#"#

    ��������

    ������������

    ��������

    $%$%$%$%

    �!�!�!�!

    ��������

    &'(&'(&'(&'(��������������������

  • Oracle9i Database Administration Fundamentals I 1-10

    ������������ ��������

    오라클데이터베이스의물리적구조에는제어파일, 데이터파일및리두로그파일등세가지파일유형이포함됩니다.

    1-10 Copyright © Oracle Corporation, 2001. All rights reserved.

    ������������ ��������

    /01/01/01/01-2� -2� -2� -2� %"%"%"%"����&'&'&'&'()()()()*+�*+�*+�*+�34.$%34.$%34.$%34.$%.• 56565656()()()()• ������������()()()()• 07070707�8�8�8�8()()()()

    "#"#"#"#

    ����������������������������

    (������������)*+$)*+$)*+$)*+$

    ,-,-,-,-)

    ././././

    0'10'10'10'1

    $%$%$%$%�!�!�!�!

    ��������

  • Oracle9i Database Administration Fundamentals I 1-11

    1-11 Copyright © Oracle Corporation, 2001. All rights reserved.

    ������������ ��������

    Oracle����9!09!09!09!0-2 -2 -2 -2 %"%"%"%"7777&'&'&'&'9!09!09!09!0:;,�:;,�:;,�:;,�----�.$%�.$%�.$%�.$%.• SGA(�?:;:;:;:;): ����&����&����&����&�?:;:;:;:;): LMLMLMLMJ���&J���&J���&J���&

  • Oracle9i Database Administration Fundamentals I 1-12

    SGA������������ �������� ��������SGA는공유글로벌영역이라고도하며데이터베이스프로세스에서공유하는데이터베이스정보를저장하는데사용됩니다. 여기에는 Oracle 서버를위한데이터및제어정보가포함되며 Oracle이상주하는컴퓨터의가상메모리에할당됩니다.다음명령문을사용하면 SGA 메모리할당상태를볼수있습니다.SQL> SHOW SGA:

    Total System Global Area 36437964 bytes

    Fixed Size 6543794 bytes

    Variable Size 19521536 bytes

    Database Buffers 16777216 bytes

    Redo Buffers 73728 bytes

    1-12 Copyright © Oracle Corporation, 2001. All rights reserved.

    ������������ ������������ ��������

    • SGA NONONONO9!09!09!09!0-2�-2�-2�-2�-�.$%-�.$%-�.$%-�.$%.– ������������– ��������������������������������– ������������

    – ����������������(����: ������������������������, ��������������������)

    • SGA� � � � %"%"%"%"7777&'&'&'&'9!09!09!09!0-2P-2P-2P-2PQ&�Q&�Q&�Q&�-�C-�C-�C-�CRRRRST$%ST$%ST$%ST$%.– �� �� �� �� ����– Java ����

  • Oracle9i Database Administration Fundamentals I 1-13

    ������������ ������������ ����������������

    동적동적동적동적 SGA:Oracle9i부터동적 SGA는인스턴스를종료하지않고 SGA 구성을변경할수있는기반구조를구현합니다. 따라서인스턴스를종료하지않고데이터베이스버퍼캐시및공유풀의크기를변경할수있습니다. 데이터베이스버퍼캐시및공유풀은처음구성이계속유지되는것이아니라작업로드에따라최대 SGA_MAX_SIZE까지늘어나거나줄어들수있습니다.SGA 크기크기크기크기 조정조정조정조정:SGA 크기는여러초기화매개변수에의해결정됩니다. SGA 크기에가장많은영향을주는매개변수는다음과같습니다.DB_CACHE_SIZE: 표준블록의캐시크기. 기본적으로 UNIX에서는 48MB이고 NT에서는52MB입니다.LOG_BUFFER: 리두로그버퍼에할당되는바이트수SHARED_POOL_SIZE: 공유 SQL 및 PL/SQL에 제공되는영역의바이트크기. 기본적으로16MB지만 64비트인경우기본크기는 64MB입니다.LARGE_POOL_SIZE: 대용량풀의크기. 기본값은 0입니다. (init.ora 매개변수PARALLEL_AUTOMATIC_TUNING이 TRUE로 설정될때를제외하고는기본값이자동으로계산됩니다.)JAVA_POOL_SIZE: Java 풀의크기. 기본값은 24MB입니다.

    따라서 SGA 크기는 SGA_MAX_SIZE - DB_CACHE_SIZE - LOG_BUFFER –SHARED_POOL_SIZE - LARGE_POOL_SIZE - JAVA_POOL_SIZE를 초과할수없습니다.주주주주: 동적 SGA 및크기조정에대해서는 Oracle9i Database Performance Tuning(한글판) 과정에서자세하게다룹니다.

  • Oracle9i Database Administration Fundamentals I 1-14

    1-14 Copyright © Oracle Corporation, 2001. All rights reserved.

    ������������ ������������ ��������

    • SGA������������������������.• SGA_MAX_SIZE ����������������������������������������.• SGA ������������������������������������������������������������ �!�� �!�� �!�� �!��.

    – ���������������� �������� �������� ����– �������� ���� SGA_MAX_SIZE ������������ ������������ ��������

    ������������ ������������ ����������������

    할당할당할당할당 단위단위단위단위

    그래뉼은연속적인가상메모리할당단위입니다. 그래뉼크기는예상되는총 SGA 크기에따라다르며이크기는 SGA_MAX_SIZE 매개변수 값에 준하여 계산됩니다.

    • 예상 SGA 크기가 128MB보다작은경우에는 4MB입니다.

    • 그외의경우에는 16MB입니다.구성요소(데이터베이스버퍼캐시및공유풀)는그래뉼단위에따라늘어나거나줄어듭니다. 그래뉼을소유하는각구성요소의경우구성요소에할당된그래뉼수, 구성요소에대한보류작업(예: ALTER SYSTEM을통한그래뉼할당, ALTER SYSTEM을통한그래뉼해제, 해당자체튜닝) 및그래뉼단위의대상크기는 V$BUFFER_POOL뷰에의해추적되고표시됩니다. 인스턴스가시작될때 Oracle 서버는각그래뉼마다그래뉼항목을하나씩할당하여주소공간의 SGA_MAX_SIZE바이트를 지원합니다. 시작이계속됨에따라각구성요소는필요한그래뉼을모두얻게됩니다. SGA 구성의최소단위는세개의그래뉼즉, 각각고정 SGA[리두버퍼포함], 데이터베이스버퍼캐시, 공유풀을위한그래뉼입니다.

  • Oracle9i Database Administration Fundamentals I 1-15

    ���� ����

    공유풀환경에는고정구조와가변구조가모두있습니다. 고정구조는비교적동일한크기를유지하는반면가변구조는사용자및프로그램요구사항에따라크기가늘어나거나줄어듭니다. 고정구조와가변구조의실제크기조정은초기화매개변수와 Oracle 내부알고리즘작업에따라달라집니다.공유공유공유공유 풀풀풀풀 크기크기크기크기 조정조정조정조정

    공유풀은재사용가능한 SQL 실행계획(PL/SQL 패키지, 프로시저 및함수)과커서정보와같이전역적으로공유할수있는객체를위해사용되므로고정영역과가변영역모두의요구를수용하도록크기가조정되어야합니다. 공유풀에대한메모리할당은초기화매개변수 SHARED_POOL_SIZE에의해결정되며 ALTER SYSTEM SET을 사용하여크기를동적으로조정할수있습니다. 성능분석후에크기를조정할수있지만전체 SGA 크기는SGA_MAX_SIZE를 초과할 수 없습니다.

    1-15 Copyright © Oracle Corporation, 2001. All rights reserved.

    �������� ����

    • ��������������������������������������������.– �������� ������������ ������������ SQL – �������� ������������ �������� �������� ��������

    ����������������������������������������������������������������������������.– ���������������� ��������– �������� ���������������� ��������

    • SHARED_POOL_SIZE�������������������� !" !" !" !"�#�#�#�#

    $��$��$��$��.

    �������� ����

    ����������������������������

    ALTER SYSTEM SET SHARED_POOL_SIZE = 64M;

    �������� ��������������������

  • Oracle9i Database Administration Fundamentals I 1-16

    �������������������� ��������

    라이브러리캐시크기는공유풀에정의된크기조정에따라달라집니다. 메모리는명령문이구문분석되거나프로그램단위가호출될때할당됩니다. 공유풀의크기가너무작으면명령문이라이브러리캐시로계속재로드되어성능에영향을주게됩니다. 라이브러리캐시는 LRU 알고리즘에 의해관리됩니다. 캐시가채워지면라이브러리캐시에서최근에덜사용된실행경로와구문분석트리가제거되어새항목을위한여유공간이생성됩니다. 재사용되지않는 SQL 문이나 PL/SQL 문은삭제됩니다.라이브러리캐시는다음두구조로구성됩니다.

    • 공유 SQL: 공유 SQL은 데이터베이스에대해 SQL 문을실행하기위한 실행계획과구문분석트리를저장하고공유합니다. 다음에동일한 SQL 문을실행할때는공유풀에있는구문분석정보를이용하여신속하게처리할수있습니다. SQL 문에서필요할때마다공유 SQL 영역을 사용할수있게하려면텍스트, 스키마및바인드변수가동일해야합니다.

    • 공유 PL/SQL: 공유 PL/SQL 영역은최근에실행된 PL/SQL 문을저장하고공유합니다. 구문분석되고컴파일된프로그램단위와프로시저(함수, 패키지및트리거)는이영역에저장됩니다.

    1-16 Copyright © Oracle Corporation, 2001. All rights reserved.

    �������������������� ��������

    • �������������������������������� SQL PL/SQL ����������������������������������������.

    • ����������������������������������������������������������������.• LRU(Least Recently Used) ��� ����� ����� ����� ��!�"��!�"��!�"��!�"��.• �#�#�#�#$$$$%&�%&�%&�%&�%'"��%'"��%'"��%'"��.

    – �������� SQL ��������– �������� PL/SQL ��������

    • ()�()�()�()���������****()()()()&��&��&��&���+�+�+�+,�"��,�"��,�"��,�"��.

  • Oracle9i Database Administration Fundamentals I 1-17

    ������������ ���������������� ����

    데이터딕셔너리캐시는딕셔너리캐시또는행캐시라고도합니다. 데이터딕셔너리정보를데이터베이스버퍼캐시및공유풀메모리에다중캐시하여성능을향상시킬수있습니다. 데이터베이스에대한정보(사용자계정데이터, 데이터파일이름, 세그먼트이름, 확장영역위치, 테이블설명및사용자권한)는데이터딕셔너리테이블에저장됩니다. 서버에서이정보가필요하면데이터딕셔너리테이블을읽고반환된데이터는데이터딕셔너리캐시에저장됩니다.데이터데이터데이터데이터 딕셔너리딕셔너리딕셔너리딕셔너리 크기크기크기크기 조정조정조정조정:전체크기는공유풀크기에따라달라지며데이터베이스에의해내부적으로관리됩니다. 데이터딕셔너리캐시가너무작은경우에는데이터베이스에서서버에필요한정보를얻기위해데이터딕셔너리테이블을계속질의해야합니다. 이러한질의를순환호출이라고하는데 SQL을사용하지않는데이터딕셔너리캐시에서의직접질의보다속도가느립니다.

    1-17 Copyright © Oracle Corporation, 2001. All rights reserved.

    ������������ ���������������� ����

    • -./0.1�2-./0.1�2-./0.1�2-./0.1�2����������������������3��3��3��3�4�4�4�45#6��5#6��5#6��5#6��.• -./0.1-./0.1-./0.1-./0.178787878, 9.:9.:9.:9.:, ;, ?�?�?�?�@@@@)A)A)A)A-./0.1-./0.1-./0.1-./0.1BC�BC�BC�BC�����������������DE���DE���DE���DE���.

    • %%%%FGFGFGFGHIHIHIHIJKJKJKJK2L2L2L2LM�N1�M�N1�M�N1�M�N1�-./-./-./-./OPQ��OPQ��OPQ��OPQ��2222��������RSRSRSRSBCBCBCBC.T�.T�.T�.T�+GU�+GU�+GU�+GU�VN1�VN1�VN1�VN1�W;��W;��W;��W;��

    ����.• -./-./-./-./OPQ�OPQ�OPQ�OPQ���������X5��X5��X5��X5��YZU[YZU[YZU[YZU[\4]\4]\4]\4] DML������������^_^_^_^_Z`.Z`.Z`.Z`.abc��abc��abc��abc��.

    • ()�()�()�()���������****()()()()&��&��&��&���+�+�+�+,�"��,�"��,�"��,�"��.

  • Oracle9i Database Administration Fundamentals I 1-18

    �������������������� ���� ����

    질의를처리할때 Oracle 서버프로세스는필요한블록을데이터베이스버퍼캐시에서찾습니다. 데이터베이스버퍼캐시에서찾지못한경우에는데이터파일에서블록을찾아데이터베이스버퍼캐시에복사합니다. 이후요청에서동일한블록이필요하면메모리에서직접블록을찾기때문에물리적으로읽을필요가없습니다. Oracle 서버는 LRU(Least Recently Used) 알고리즘을사용해최근에액세스하지않은버퍼를삭제하여데이터베이스버퍼캐시에새로운블록을위한공간을만듭니다.

    1-18 Copyright © Oracle Corporation, 2001. All rights reserved.

    �������������������� ���� ����

    • -./-./-./-./78�278�278�278�2de3de3de3de3-./-./-./-./:f4:f4:f4:f4g�h�g�h�g�h�g�h���������������������.

    • -./�-./�-./�-./�ijkijkijkijklmnlmnlmnlmnoooo'p.'p.'p.'p.(q(q(q(qrs"��rs"��rs"��rs"��.• LRU ��� ���� ���� ���� ��+�+�+�+!�"��!�"��!�"��!�"��.• DB_BLOCK_SIZE����)h)h)h)h:f:f:f:f()�()�()�()�,����,����,����,����.

    ������������������������ ��������

    ����

  • Oracle9i Database Administration Fundamentals I 1-19

    ������������������������ �������� ����

    데이터베이스데이터베이스데이터베이스데이터베이스 버퍼버퍼버퍼버퍼 캐시캐시캐시캐시 크기크기크기크기 조정조정조정조정:데이터베이스버퍼캐시에있는각버퍼의크기는 Oracle 블록의크기와같고DB_BLOCK_SIZE 매개변수를통해지정됩니다. 데이터베이스버퍼캐시는버퍼풀과다중블록크기에대한독립된서브캐시로구성됩니다. DB_BLOCK_SIZE매개변수는SYSTEM테이블스페이스에서사용되는기본블록크기를결정합니다.

    다음세개의매개변수가데이터베이스버퍼캐시의크기를정의합니다.• DB_CACHE_SIZE: 기본버퍼캐시의크기만조정합니다. 이값은항상존재하며 0으

    로설정할수없습니다.• DB_KEEP_CACHE_SIZE: 재사용될메모리 블록을보유하는데사용되는 Keep 버퍼

    캐시의크기를조정합니다.• DB_RECYCLE_CACHE_SIZE: 거의재사용되지않을메모리블록을제거하는데사

    용되는 Recycle 버퍼 캐시의크기를조정합니다.

    1-19 Copyright © Oracle Corporation, 2001. All rights reserved.

    ������������������������ �������� ����

    • ������������������������������������������������������������.– DB_CACHE_SIZE– DB_KEEP_CACHE_SIZE– DB_RECYCLE_CACHE_SIZE

    • ��������������������������������������������������������.

    • DB_CACHE_ADVICE������ �� �� �� ����������!��!��!��!"#$"#$"#$"#$%&%&%&%&'�'�'�'�( ( ( ( )*�)*�)*�)*��+',-�+',-�+',-�+',-.����.����.����.����.

    • V$DB_CACHE_ADVICE���� )*�)*�)*�)*� /�0��/�0��/�0��/�0��.

    ALTER SYSTEM SET DB_CACHE_SIZE = 96M;

  • Oracle9i Database Administration Fundamentals I 1-20

    ������������������������ �������� ����

    ��������

    버퍼버퍼버퍼버퍼 캐시캐시캐시캐시 권고권고권고권고:버퍼캐시권고기능은다양한캐시크기의작업을예측하기위한통계수집을활성화하거나비활성화합니다. 이러한통계에서제공되는정보를사용하면지정된작업로드에맞게데이터베이스버퍼캐시의크기를조정할수있습니다. 수집된버퍼캐시권고정보는V$DB_CACHE_ADVICE뷰를통해표시됩니다.버퍼캐시권고는초기화매개변수 DB_CACHE_ADVICE를통해활성화됩니다. 이매개변수는동적매개변수로 ALTER SYSTEM을사용하여변경할수있으며세값(OFF, ON, READY)을사용할수있습니다.DB_CACHE_ADVICE 매개변수매개변수매개변수매개변수 값값값값

    OFF: 권고가해제되고 권고에대한메모리가할당되지않습니다.ON: 권고가설정되고 CPU 및메모리오버헤드가모두발생합니다.OFF상태일때이매개변수를 ON상태로설정하려고하면 "ORA-4031 Inability toallocate from the Shared Pool when the parameter is switched toON"이라는오류가발생합니다. 매개변수가 READY상태인경우에는 메모리가이미할당되어있으므로오류메시지없이 ON으로설정할 수있습니다.READY: 권고가해제되지만권고에대한메모리는할당된상태로유지됩니다. 권고가실제로설정되기전에메모리를할당하면 ORA-4031오류가발생하지않습니다. 매개변수가OFF에서이상태로전환된경우에는 ORA-4031오류가발생할수있습니다.

  • Oracle9i Database Administration Fundamentals I 1-21

    1-21 Copyright © Oracle Corporation, 2001. All rights reserved.

    �������� �������� ��������

    • ������������������������������������������������������������������������������������.

    • ����������������������������������������.• ����������������������������������������� � � � ���!"���!"���!"���!"������������.• � � � � ���#���#���#���#����������������$�%&'($�%&'($�%&'($�%&'($)*+$)*+$)*+$)*+,-,-,-,-..../012/012/012/01234��34��34��34��.

    • 5�#5�#5�#5�# LOG_BUFFER6666 ,�7��,�7��,�7��,�7��.

    �������� ��������

    ��������

    �������� �������� ��������

    리두로그버퍼는데이터파일블록의변경사항을포함하는순환버퍼입니다. 이정보는리두항목에저장됩니다. 리두항목에는 INSERT, UPDATE, DELETE, CREATE, ALTER 또는 DROP작업에의해 변경되기전의데이터를재생성해야하는정보가포함됩니다.

    리두리두리두리두 로그로그로그로그 버퍼버퍼버퍼버퍼 크기크기크기크기 조정조정조정조정

    리두로그버퍼의크기는초기화매개변수 LOG_BUFFER에 의해 정의됩니다.

    주주주주: 리두로그버퍼의크기조정에대해서는 Oracle9i Database Performance Tuning(한글판)과정에서자세하게다룹니다. 리두로그파일에대한자세한내용은 “리두로그파일관리”단원을참조하십시오.

  • Oracle9i Database Administration Fundamentals I 1-22

    ��������

    공유서버, Oracle XA 또는병렬질의버퍼용대용량풀에서세션메모리를할당함으로써주로공유 SQL 문을캐시하기위한용도로공유풀을사용할수있습니다. 따라서공유풀내의영역에대한부담을줄일수있습니다. 공유풀은충분한메모리를사용하여공유서버세션정보, I/O, 백업 및복구프로세스를위해 SQL 구문분석트리를캐시할수있습니다. 공유 SQL 캐시크기를조정하여오버헤드를줄이면성능이향상됩니다.백업백업백업백업 및및및및 복원복원복원복원:RMAN(Recovery Manager)은 BACKUP_DISK_IO= n및 BACKUP_TAPE_IO_SLAVE =TRUE 매개변수가설정된경우대용량풀을사용합니다. 대용량풀이구성되었지만크기가충분하지않으면대용량풀에서메모리를할당할수없습니다. RMAN은오류메시지를경고로그파일에쓰며백업또는복원을위해 I/O 슬래이브를사용하지않습니다.병렬병렬병렬병렬 실행실행실행실행:PARALLEL_AUTOMATIC_TUNING이 TRUE로 설정되면대용량풀이사용되고, 그렇지않으면이러한버퍼가공유풀에할당됩니다.

    1-22 Copyright © Oracle Corporation, 2001. All rights reserved.

    ������������ ����

    • SGA����������������������������������������.• ������������������������������������.• ��������

    – �������� ������������ �������� ����(UGA)– I/O �������� ������������– �������� ���� �������� �������� �������� RMAN– �������� �������� ������������ ��������

    – PARALLEL_AUTOMATIC_TUNING���� TRUE���� ��������• LRU ��������������������������������������������.• LARGE_POOL_SIZE���� �� �� �� �� !"#��!"#��!"#��!"#��.

  • Oracle9i Database Administration Fundamentals I 1-23

    ������������ ��������������������

    대용량대용량대용량대용량 풀풀풀풀 크기크기크기크기 조정조정조정조정:대용량풀은 LARGE_POOL_SIZE매개변수에서정의한크기(바이트)로조정됩니다. 이매개변수는동적매개변수가아닙니다.대용량대용량대용량대용량 풀풀풀풀 및및및및 LRU 목록목록목록목록:대용량풀에는 LRU 목록이없습니다. LRU 목록을사용하는공유풀의예약공간과는다른개념입니다.

  • Oracle9i Database Administration Fundamentals I 1-24

    1-24 Copyright © Oracle Corporation, 2001. All rights reserved.

    Java ����

    • Java ����������������������������������������������������������������.• Java������������������������������������������������������������.• JAVA_POOL_SIZE���� ���� ���� ���� !"!"!"!"#$%#$%#$%#$%&'(��&'(��&'(��&'(��.

    Java ����Java 풀은선택적인설정이지만 Java를설치하고사용하는경우필요합니다. Java 풀은JAVA_POOL_SIZE매개변수를통해바이트단위로크기가조정됩니다. Oracle9i에서 Java 풀의기본크기는 24MB입니다.

  • Oracle9i Database Administration Fundamentals I 1-25

    PGA�������������������� ������������ ����프로그램글로벌영역또는 PGA(프로세스글로벌영역)는데이터를포함하고단일서버프로세스또는단일백그라운드프로세스의정보를제어하는메모리영역입니다. PGA는프로세스가생성될때할당되고프로세스가종료될때할당이해제됩니다. 여러프로세스가공유하는 SGA와달리 PGA는단하나의프로세스가사용하는영역입니다. PGA 내용내용내용내용:PGA 메모리의내용은인스턴스가전용서버에서실행되는지또는공유서버구성에서실행되는지여부에따라다릅니다. 일반적으로 PGA 메모리에는다음구성요소가포함됩니다.

    • 전용 SQL 영역: 바인드 정보및런타임메모리구조와같은데이터가포함되며 SQL 문을실행하는각세션마다전용 SQL 영역이 있습니다. 동일한 SQL 문을제출하는각사용자는단일공유 SQL 영역을사용하는고유한전용 SQL 영역을 가지고있습니다. 따라서많은전용 SQL 영역을동일한공유 SQL 영역과연관시킬수 있습니다. 커서의전용 SQL 영역은다음 두영역으로나누어집니다.

    – 지속영역: 바인드정보를포함하며커서가닫힐때만해제됩니다.– 런타임영역: 실행요청의첫번째단계로생성됩니다. INSERT, UPDATE및DELETE명령의경우 이영역은명령문이실행된후에해제되고질의의경우에는모든행이인출되거나질의가취소된후에만해제됩니다.

    1-25 Copyright © Oracle Corporation, 2001. All rights reserved.

    ���������������� ������������ ��������

    • ����������������������������������������������������������������������������������������������������

    ����� ����� ����� ����� .• ����!����!����!����!"#$"#$"#$"#$%%%%&'(� &'(� &'(� &'(� .• ����!����!����!����!)*$)*$)*$)*$%%%%&'�&'�&'�&'��+�+�+�+(� (� (� (� .

    • �,-�,-�,-�,-����./����./����./����./��(� ��(� ��(� ��(� .������������

    ����������������

    PGA����

    ����������������

  • Oracle9i Database Administration Fundamentals I 1-26

    ���������������� ������������ ����������������

    • 전용 SQL 영역(계속): 전용 SQL 영역의위치는세션에설정된접속유형에따라다릅니다. 전용서버환경에서는전용 SQL 영역이 해당서버프로세스의 PGA에있고공유서버환경에서는 SGA에있습니다.

    전용 SQL 영역은사용자프로세스에서관리해야합니다. 사용자프로세스에서할당할수있는전용 SQL 영역의수는항상초기화매개변수 OPEN_CURSORS에의해제한됩니다. 이매개변수의기본값은 50입니다.

    • 세션메모리: 세션의변수및세션에관련된기타정보를유지하기위해할당되는메모리로구성됩니다. 공유서버환경에서세션메모리는전용메모리가아닌공유메모리입니다.

    • SQL 작업영역: 정렬, 해시조인, 비트맵병합, 비트맵생성과같이메모리가많이필요한작업에사용됩니다. 작업영역의크기는제어하거나튜닝할수있습니다.Oracle9i부터작업영역의크기는 WORKAREA_SIZE_POLICY매개변수를기본값인AUTO로설정하고초기화매개변수 PGA_AGGREGATE_TARGET을설정하여전역적으로자동관리됩니다. PGA_AGGREGATE_TARGET 매개변수는 DBA가 설정하며인스턴스에서사용할수있는 PGA 메모리의목표합계양을지정합니다. 이매개변수는단지목표일뿐이며 DBA가인스턴스레벨에서동적으로수정할수있고바이트, KB, MB 또는 GB 단위를사용합니다. 이러한매개변수가설정되면작업영역의크기가자동으로조정되고모든 *_AREA_SIZE매개변수는이세션에서무시됩니다.

    Oracle9i이전에는 DBA가 SORT_AREA_SIZE, HASH_AREA_SIZE, BITMAP_MERGE_AREA_SIZE 및 CREATE_BITMAP_AREA_SIZE 매개변수를설정하여 SQL 작업영역의 최대크기를제어했습니다. 그러나최대작업영역크기는데이터입력크기및시스템에서활성화된총작업영역수에따라이상적으로선택되기때문에이러한매개변수를설정하는것은쉽지않습니다. 이두요소는작업영역과시간에따라크게달라집니다. 따라서최적의환경에서이러한매개변수를튜닝하기는어렵습니다.

  • Oracle9i Database Administration Fundamentals I 1-27

    ���������������� ������������ ����������������

    전용전용전용전용 서버와서버와서버와서버와 공유공유공유공유 서버의서버의서버의서버의 메모리메모리메모리메모리 할당할당할당할당 차이차이차이차이

    PGA 메모리의내용은인스턴스가전용서버구성에서실행되는지또는공유서버구성에서실행되는지여부에따라다릅니다. 일반적으로 PGA 메모리에는다음구성요소가포함됩니다.

    PGAPGA런타임영역(DML/DDL)의위치

    SGAPGA런타임영역(SELECT)의위치

    SGAPGA지속영역의위치

    공유전용세션메모리특성

    공유공유공유공유 서버서버서버서버전용전용전용전용 서버서버서버서버메모리메모리메모리메모리 영역영역영역영역

  • Oracle9i Database Administration Fundamentals I 1-28

    1-28 Copyright © Oracle Corporation, 2001. All rights reserved.

    ���������������� ��������

    Oracle������������������������������������������������������������.• ��������������������: ���������������������������������������� Oracle �������������������������� �� �� �� !!!!"#$��"#$��"#$��"#$��.

    • ����������������: Oracle %�&��%�&��%�&��%�&����'(��'(��'(��'(�����������������)��)��)��)�*+ *+ *+ *+ !!!!"#$��"#$��"#$��"#$��.

    • ,-./0,-./0,-./0,-./0��������: Oracle %�&��%�&��%�&��%�&��"#1"#1"#1"#123232323"#$��"#$��"#$��"#$��.

  • Oracle9i Database Administration Fundamentals I 1-29

    �������� ����������������

    데이터베이스사용자가데이터베이스의정보를요청하려면먼저 Oracle 서버에접속해야합니다. SQL*Plus와같은데이터베이스인터페이스툴을사용하고사용자프로세스를시작하여접속을요청합니다. 사용자프로세스는 Oracle 서버와직접 상호작용하지않고, 대신세션을생성하고서버프로세스를시작하는 UPI(사용자프로그램인터페이스)를통해호출을생성합니다.

    1-29 Copyright © Oracle Corporation, 2001. All rights reserved.

    �������� ����������������

    • Oracle ��4���4���4���4�56565656#��#��#��#����'7��'7��'7��'7-89��-89��-89��-89��.• :;:;:;:;������������*+�56565656#�'�7#�'�7#�'�7#�'�7?@��?@��?@��?@��.

    ������������������������ ������������

    ������������

    ������������������������

    �������� ��������

  • Oracle9i Database Administration Fundamentals I 1-30

    �������� ����������������

    사용자가접속하면서버프로세스가시작되어사용자프로세스요청을처리합니다. 서버프로세스는전용서버프로세스또는공유서버프로세스일수있습니다. 전용서버환경에서는서버프로세스가단일사용자프로세스의요청을처리하며사용자프로세스의접속이해제되면서버프로세스가종료됩니다. 공유서버환경에서는서버프로세스가여러사용자프로세스의요청을처리합니다. 서버프로세스는 OPI(Oracle 프로그램인터페이스)를사용하여 Oracle 서버와 통신합니다.주주주주: 전용환경과공유환경에서의서버프로세스할당에대한자세한내용은 Oracle9i Database Performance Tuning(한글판) 과정에서 자세하게다룹니다.

    1-30 Copyright © Oracle Corporation, 2001. All rights reserved.

    �������� ����������������

    • Oracle ������������������������������������������������������������.• �������������������������������������������������� ���� ���� ���� ��.• !!!!��������"�"�"�"�#$#$#$#$��%��%��%��%&&&&'(��'(��'(��'(��.

    �������� ���������������� ��������

    ��

    ��

    ��

    ��

    ������������

    ������������

    ������������

    ��������

    ������������

    Oracle ��������

  • Oracle9i Database Administration Fundamentals I 1-31

    �������������������� ������������

    Oracle 구조에는다섯 가지필수백그라운드프로세스가있는데이러한프로세스에대해서는이단원의뒷부분에서설명합니다. 옵션이사용되는동안에는이러한필수목록외에도여러가지선택적인백그라운드프로세스가시작됩니다. 이과정에서는 ARCn 백그라운드프로세스외의선택적프로세스에대해설명하지않습니다. 다음은일부선택적백그라운드프로세스의목록입니다.

    • RECO: 복구자• QMNn: 고급대기열처리• ARCn: 아카이버• LCKn: RAC 잠금관리자-인스턴스잠금• LMON: RAC DLM 모니터-글로벌잠금• LMDn: RAC DLM 모니터-원격잠금• CJQ0: 조정자작업대기열백그라운드프로세스• Dnnn: 디스패처• Snnn: 공유서버• Pnnn: 병렬질의슬래이브

    1-31 Copyright © Oracle Corporation, 2001. All rights reserved.

    ������������ ����������������

    )*+)*+)*+)*+,-,-,-,-..../0*/0*/0*/0*,-,-,-,-1�21�21�21�234�34�34�34�$5�$5�$5�$5�67 67 67 67

    ��������.• 8&8&8&8&9�:;:

    – DBWn PMON CKPT– LGWR SMON

    • ?@+?@+?@+?@+9�:;:– ARCn LMDn RECO– CJQ0 LMON Snnn– Dnnn Pnnn– LCKn QMNn

  • Oracle9i Database Administration Fundamentals I 1-32

    DBWn���������������������������� ��������

    서버프로세스는실행취소블록및데이터블록의변경사항을데이터베이스버퍼캐시에기록합니다. DBWn는데이터베이스버퍼캐시의더티버퍼를데이터파일에기록하여데이터베이스버퍼캐시에있는사용가능한버퍼(서버프로세스가데이터파일의블록을읽을때겹쳐쓸수있는버퍼) 수를충분하게유지합니다. 서버프로세스는데이터베이스버퍼캐시에서만변경하므로데이터베이스성능이향상됩니다.DBWn는다음이벤트중하나가발생할때까지데이터파일에기록하는것을지연시킵니다.

    • 증분또는정상체크포인트가발생한경우• 더티버퍼의개수가한계값에이른경우• 사용가능한버퍼를스캔할때프로세스가지정된개수의블록을스캔했는데도찾을

    수없는경우

    • 시간초과가발생한경우• RAC(Real Application Clusters) 환경에서핑요청을한경우• 정상또는임시테이블스페이스를오프라인으로설정한경우• 테이블스페이스를읽기전용모드로설정한경우• 테이블을삭제하거나잘라낸경우• ALTER TABLESPACE테이블스페이스이름 BEGIN BACKUP인 경우

    1-32 Copyright © Oracle Corporation, 2001. All rights reserved.

    DBWn(������������������������ ������������)

    DBWn����������������������������• ��������������������������������• ��������������������������������������������������������

    • ������������������������������������������������• �������� !� !� !� !�����������������• RAC """"#$%#$%#$%#$%�&'�&'�&'�&'��������• (%)*+%*�(%)*+%*�(%)*+%*�(%)*+%*� OFFLINE������������

    • (%)*+%*�(%)*+%*�(%)*+%*�(%)*+%*� READ ONLY���� ��������

    • (%)%(%)%(%)%(%)% DROP,�,�,�,�TRUNCATE���� ��������

    • (%)%(%)%(%)%(%)% BEGIN BACKUP������������

    ����������������

    SGA

    �������� ����������������������������

    ����

    ������������

    ������������������������

    DBWn

    ��������������������

    �������� ��������

  • Oracle9i Database Administration Fundamentals I 1-33

    LGWR������������ ����������������LGWR는다음상황일 때리두로그버퍼의내용을리두로그파일에순차적으로기록합니다.

    • 트랜잭션커밋시• 리두로그버퍼가 1/3 찼을때• 1MB 이상의변경사항이리두로그버퍼에기록되는경우• DBWn가데이터베이스버퍼캐시에서수정된블록을데이터파일에기록하기전에• 3초마다

    리두가복구를위해필요하기때문에디스크에리두를기록한후에만 LGWR는커밋작업을확인합니다.또한 LGWR는데이터 파일에기록하도록 DBWn에요청할수있습니다.

    1-33 Copyright © Oracle Corporation, 2001. All rights reserved.

    LGWR(�������� ������������)

    LGWR���� �������� �������� ����������������.• �������� ���� ��������• 1/3 �������� ��������• 1MB ������������ ������������ ������������

    • 3������������• DBWn���� ���������������� ��������

    ����������������

    SGA

    ����

    ����

    ������������

    ����

    ������������

    ����

    ������������������������

    DBWn LGWR

    ���� ��������

    ��������

  • Oracle9i Database Administration Fundamentals I 1-34

    SMON���������������� ����������������Oracle 인스턴스가실패하면디스크에기록하지않은 SGA의정보는손실됩니다. 예를들어, 운영체제가실패하면인스턴스도실패합니다. 인스턴스손실후백그라운드프로세스인 SMON은데이터베이스를다시열때인스턴스복구를자동으로수행합니다. 인스턴스복구는다음단계로구성됩니다.

    1. 롤포워드하여데이터파일에는기록되지않았지만온라인리두로그에기록된데이터를복구합니다. 이데이터는인스턴스가실패했을때 SGA가손실되었기때문에디스크에기록되지않았습니다. 이프로세스동안 SMON은리두로그파일을읽어들여리두로그에기록된변경사항을데이터블록에적용합니다. 모든커밋된트랜잭션이리두로그에기록되었기때문에이프로세스는이러한트랜잭션을완전히복구합니다.

    2. 데이터베이스를열어사용자가로그인하도록합니다. 복구되지않은트랜잭션에의해잠긴데이터를제외하고는즉시사용가능합니다.

    3. 커밋되지않은트랜잭션은롤백됩니다. 이것은 SMON에의해또는각서버프로세스가잠긴데이터를액세스할때해당서버프로세스에의해롤백됩니다.

    SMON은또한다음과같은일부공간유지관리기능을수행합니다.• 데이터파일에서사용가능한공간의인접영역을병합합니다.• 임시세그먼트의할당을해제하여데이터파일에서사용가능한공간으로되돌립니

    다.

    1-34 Copyright © Oracle Corporation, 2001. All rights reserved.

    SMON(������������ ������������)

    ��������:• ������������������������

    –��������������������������������������������������������.

    –������������������������������������ !"#!�� !"#!�� !"#!�� !"#!��$�$�$�$�

    ����.–%&'(%&'(%&'(%&'()*)*)*)*+,-+,-+,-+,-.�.�.�.��/����/����/����/���.

    • ��������01201201201234�34�34�34�5�5�5�5�������������.

    • �6�6�6�6��7+���7+���7+���7+�89�89�89�89��:����:����:����:���.

    ����

    ����

    ������������

    ����

    ������������������������

    ����������������

    SGA

    SMON

    ������������

    ����

  • Oracle9i Database Administration Fundamentals I 1-35

    PMON�������������������� ������������백그라운드프로세스인 PMON은프로세스실패후다음과같이정리합니다.

    • 사용자의현재트랜잭션이롤백됩니다.• 현재유지된테이블또는행잠금을해제합니다.• 현재사용자가예약한기타자원을사용가능하게합니다.• 사용불능디스패처를재시작합니다.

    디스패처는 Oracle9i Database Administration Fundamentals II(한글판) 과정에서자세히설명합니다.

    1-35 Copyright © Oracle Corporation, 2001. All rights reserved.

    PMON(���������������� ������������)

    ��������������������������������

    ������������������������.• ����������������������������������������.

    • ��������������������������������.• �������������������� ! ! ! !"#"#"#"#$%$%$%$%������������.

    • ! ! ! !'��()'��()'��()'��()*+,���*+,���*+,���*+,���.

    PGA ��������

    ����������������

    SGA

    PMON

  • Oracle9i Database Administration Fundamentals I 1-36

    CKPT����������������������������CKPT 프로세스는 3초마다데이터를제어파일에저장하여리두로그파일�