목록Database (7)
나의 개발일지

시퀀스의 개념 고유한 정수 생성을 위해 사용하는 데이터베이스 객체 응용 프로그램에 코드를 작성하여 대체 가능 기본키 값 생성에 소요되는 시간이 줄어드는 장점 제공 시퀀스 생성에 필요한 응용 프로그램 코드의 양을 줄여 주기 때문 테이블에 독립적인 객체 여러 테이블에 동일한 시퀀스를 사용 가능 (권장하지 않음) 시퀀스의 생성 CREATE SEQUENCE 문을 사용하여 생성 구문 CREATE SEQUENCE sequence_name [INCREMENT BY b] [START WITH n] [{MAXVALUE n | NOMAXVALUE}] [{MINVALUE n | NOMINVALUE}] [{CYCLE | NOCYCLE}] [{CACHE n | NOCACHE}]; 시퀀스의 생성 구문 설명 INCREMENT BY..

트랜잭션 Data를 처리하는 하나의 논리적 단위 트랜잭션의 4가지 특징, ACID Atomicity (원자성) - 트랜잭션의 작업이 부분적으로 실행되거나 중단되지 않는 것을 보장 Consistency (일관성) - 트랜잭션이 성공적으로 완료되면 일관적인 Database 상태를 유지 Isolation (격리성) - 트랜잭션 수행 시 다른 트랜잭션의 작업이 끼어들지 못하도록 보장 Durability (지속성) - 트랜잭션이 성공적으로 수행되면 영원히 반영 동시성 제어 (Concurrency Control) 동시에 실행되는 트랜잭션 수를 최대화하면서도 입력, 수정, 삭제, 검색 시 데이터의 무결성이 유지되도록 하는 것 동시성 제어가 어려운 이유는 동시성과 일관성이 반비례 관계이기 때문 동시성을 높이려고 Loc..

SQL 명령어 분류 데이터 정의어 : DDL (Data Definition Language) 데이터베이스를 정의하는 언어로 생성, 수정, 삭제하는 역할 종류 역할 CREATE - 데이터베이스, 테이블을 생성하는 역할 ALTER - 테이블을 수정하는 역할 DROP - 데이터베이스, 테이블을 삭제하는 역할 TRUNCATE - 테이블을 초기화 시키는 역할 데이터 조작어 : DML (Data Manipulation Language) 데이터베이스에 입력된 레코드를 조회, 수정, 삭제하는 등의 역할 종류 역할 SELECT - 데이터를 조회하는 역할 INSERT - 데이터를 삽입하는 역할 UPDATE - 데이터를 수정하는 역할 DELETE - 데이터를 삭제하는 역할 데이터 제어어 : DCL (Data Control ..

서버 기동 단계shutdown → nomount → mount → open복구 절차를 이해하기 위해 중요한 내용 Shutdown- 오라클 서버가 완전히 종료된 상태 - Database와 Instance가 둘 다 종료된 상태Nomount- Instance가 구성되는 단계 - Parameter file을 필요로 함 - SGA를 설정된 크기로 할당하고 Background Process를 생성 - alert.log file, Trace file (추적 파일)을 오픈 - 작업 내용 : Database 생성, Control file 재생성Mount- Instance와 Database를 매핑하는 단계 - Control file을 필요로 함 - Data file과 Redo Log file의 상태를 확인 (DB name..

SQL문 실행 과정 Soft Parsing : Library Cache에 이전에 실행했던 쿼리가 있는 경우 실행 Hard Parsing : Library Cache에 이전에 실행했던 쿼리가 없는 경우 실행 Parsing Syntax Check (문법 검사) - SQL문의 철자 및 문법에 이상이 없는지를 확인 Semantic Check (오브젝트, 권한 검사) - SQL문에 사용된 테이블 이름, 컬럼 등이 정확한지 검사 - SQL문을 사용하는 사용자가 해당 권한이 충분한지 검사 Shared pool Check (Library Cache 확인) - Library Cache에 실행 계획이 있는지 확인 - 있으면 Soft Parsing - 없으면 Hard Parsing Soft Parsing Execution ..

논리적 구조 / 물리적 구조 데이터의 효과적인 저장, 관리를 하기 위해서 논리적 / 물리적 구조에 대한 이해가 필요 Database 논리적 구조인 Tablespace가 여러 개 모여서 테이터베이스를 구성 Tablespace / Data File Tablespace : 하나의 Database를 구성하는 여러 개의 논리적 구조 Tablespace는 기본적으로 System, Undo, Temp Tablespace가 생성 사용자에 의해 추가적으로 여러개의 TBS 생성 가능 System TBS Data Dictionary 테이블들이 저장되는 논리적 구조 Data Dictionary : DB내에 생성되어 있는 모든 객체들에 대한 정보, DB의 현재 상태를 저장 Undo TBS DML(Insert, Update, D..

오라클 데이터베이스 구조 인스턴스 : 메모리 안에 만들어지는 오라클 시스템의 논리적인 구조 데이터베이스 : 하드 드라이브 안에 만들어지는 오라클 시스템의 물리적인 구조 인스턴스, 데이터베이스는 동적으로 연결되어 있다. Instance SGA (System Grobal Area) 모든 사용자가 공유 가능하여 사용 Shared Pool Library Cache - 모든 SQL 문장, 문장의 실행계획이 저장된 공간 Data Dictionary Cache - 최근에 사용된 DB 정의 정보가 저장된 공간 - 정의 정보 : file, object, 권한, 제약조건 등 - 구문 분석이나 실행계획을 세울 때 사용하는 Dictionary들이 Cache 된 공간 Database Buffer Cache - 데이터의 조회와 ..