전체 글
-
[SQL/ORACLE] SELECT 문SQL/ORACLE 2022. 12. 28. 13:28
■ SQL 문장 작성법 SQL 문은 대소문자 구분 X SQL 문은 하나 이상의 줄에 입력할 수 있으며 종료문자(;)를 입력 키워드는 다음 줄에 나눠 쓰거나 약어로 쓸 수 없다. 절은 읽기 쉽고 편집하기 쉽도록 서로 다른 줄에 쓰는 것이 좋다. 좀 더 읽기 쉬운 SQL 문을 작성하기 위해 들여쓰기 사용 키워드는 대문자로 입력, 테이블 이름, 열 등은 소문자로 입력하는 것이 좋다. ■ SQL 기능 명칭 설명 프로젝션(Projection) SELECT 절에 열 이름을 지정 선택(Selection) 조건문을 사용하여 표시할 행을 제한 조인(Join) 둘 이상의 테이블을 연결하고 하나의 결과로 조합하여 출력 SELECT 문 데이터베이스에 저장된 데이터를 사용자가 원하는 형태로 검색하기 위한 언어 ■ 구문 SELE..
-
[데이터베이스] 데이터베이스의 분리공부/데이터베이스 2022. 12. 23. 16:36
■ 데이터베이스 분리의 이유 명칭 종류 분리 Contention(충돌) Fragment(조각) 사용주기(기간) ■ System Table Space System table space는 독립적으로 분리되어있다. ■ Contention(충돌) Contention의 방지를 위해 분리되어야한다. 명칭 종류 설명 Nan System Table Space Data Segment 테이블 데이터를 저장 Index Segment 인덱스 정보를 저장 Undo Segment 트랜잭션에 의해 변경되는 데이터의 변경 전 값을 저장 Temporary Segment 임시 데이터를 저장 ■ Fragment(조각) Fragment 때문에 분리되어야한다. 명칭 설명 Undo Segment 트랜잭션에 의해 변경되는 데이터의 변경 전 값을..
-
[데이터베이스] RowID 분석, INDEX, Binary Search Tree공부/데이터베이스 2022. 12. 23. 15:04
■ RowID 분석 SELECT rowid, id, name FROM test; 위 코드를 실행하여보자 ID 10번의 RowID의 세부내용을 해석하자면 아래의 표와 같다. 6자리(객체의 주소) 3자리(Relative File Addr) 6자리(Block ID) 3자리(RowID) AAAFU8 AAE AAAAHE AAA ■ Index 명칭 설명 INDEX Key Value + RowID ■ Binary Search Tree(이진 탐색 트리) 명칭 설명 Binary Search Tree 중위순회 방식 사용 왼쪽 서브 트리 -> 노드 -> 오른쪽 서브 트리 순으로 순회 만약 3번 Key Value가 사라진다고하여도 RowID는 삭제되지 않고 그대로 남아있는다. 이는 언제든지 다른 값이 들어와 대체 될 수 있기..
-
[데이터베이스] DEAD Lock(교착 상태)공부/데이터베이스 2022. 12. 22. 21:12
■ DEADLock(교착 상태) 명칭 설명 DEAD LOCK Lock의 가장 치명적인 상태 Lock을 써서 DEAD Lock이 발생 ■ DeadLock Detection(교착 상태 탐지) 교착 상태 탐지를 하지 않으면 DEAD LOCK이 발생할 수도 있다. 교착 상태를 예방하기 위해서는 2가지의 알고리즘이 필요하다. 교착 상태가 발생했는지 확인하는 알고리즘 교착 상태에서 회복하는 알고리즘 DeadLock Detection은 기본적으로 DeadLock이 일어난 후에 복구 방법이다. 교착 상태 탐지에는 방식이 2가지가 존재한다. 명칭 설명 DEAD LOCK DETECTION 인스턴스 하나를 가진 시스템 두 개 이상의 인스턴스를 가진 시스템 ■ Wait For Graph(대기 그래프) 명칭 설명 Wait Fo..
-
[데이터베이스] Integrity(무결성), Concurrency(동시성), Consistency(일관성)공부/데이터베이스 2022. 12. 22. 20:38
■ Integrity(무결성) 명칭 설명 데이터의 무결성 정확성, 일관성, 유효성이 유지되는 것 데이터베이스 관리시스템(DBMS)의 주요 기능 ■ 무결성 제약조건 명칭 설명 개체 무결성(Entity integrity) 기본키는 Null 값을 가질 수 없다. 참조 무결성(Referential integrity) 외래키는 참조할 수 없는 값을 가질 수 없다. 도메인 무결성(Domain integrity) 필드의 타입, Null 값 허용 등에 대한 것을 정의한다. Null무결성(Null integrity) 테이블의 특정 속성 값은 Null을 가질 수 없다. 고유 무결성 (Unique integrity) 테이블의 특정 속성에 레코드는 서로 값이 달라야 한다. 키 무결성 (Key integrity) 하나의 테이블..
-
[데이터베이스] Background Process공부/데이터베이스 2022. 12. 22. 19:23
■ CheckPoint(CKPT) 명칭 설명 CheckPoint 체크포인트를 실행하면 Database Buffer Cache, RedoLog Buffer Cache에 있는 내용을 Write Back을 한다. 체크포인트를 실행하면 RedoLog File을 Archive RedoLog File로 보내고 Switch 한다. ■ Database Writer Process(DBWR) 명칭 설명 Database Writer Process Database Buffer Cache의 내용을 데이터 파일에 저장하는 작업 Database Buffer Cache내의 Buffer 내용이 변경되면 Dirty라고 표시 Dirty Buffer를 Disk에 기록하면 Clean이 된다. ■ Log Writer Process(LGWR) ..
-
[데이터베이스] 동기화 확인 방법공부/데이터베이스 2022. 12. 22. 14:26
■ 동기화 확인 방법 Controll File, Data File, RedoLog File을 확인하여 SCN을 확인하여 3개의 파일의 SCN이 동일하다면 동기화가 완료되었다는 것이다. RedoLog File에 SCN이 동일하지 않다면 Archive RedoLog File을 찾아본다. ■ System Commit Number(SCN) 명칭 설명 System Commit Number(SCN) COMMIT이 발생하면 이를 처리하던 트랜잭션은 고유 번호(SCN)를 받는다. 트랜잭션들을 관리(읽기 일관성)할 수 있다. 장애 발생 시 복구의 키가 될 수 있다. Control File, DataFile, RedoLog File에 기록된 SCN을 비교하면 복구 위치를 알 수 있다. ■ LRU List 명칭 설명 LRU..
-
[데이터베이스] Oracle 서버 기동 단계(Shoutdown, Nomount, Mount, Open)공부/데이터베이스 2022. 12. 21. 21:47
■ Oracle 서버 기동 단계 상태 설명 Shutdown Database, Instance를 중지한 상태 Nomount Parameter File을 읽고 Instance를 시작 Control File 재창조 Database 생성 Mount Istance, Database *맵핑 생성된 Istance를 사용할 Database로 연결 Open 정상적으로 Oracle 서버를 서비스할 수 있는 단계 모든 파일의 존재를 확인 Control File, Data File, RedoLog File이 동기화 되어있지 않으면 오류 반환 *맵핑 : 하나의 값을 다른 값으로 대응시키는 것 ■ Archive Log Mode 명칭 설명 Archive Log Mode RedoLog File을 Archive Log File에 저장..