본문 바로가기

DB13

DB Lock 와 DB Recovery 데이터베이스 락(Database Lock) 락은 여러 트랜잭션이 동시에 데이터에 접근하는 것을 제어하기 위한 메커니즘이다. 락은 크게 공유 락과 배타적 락으로 나뉜다. 1. 공유 락(Shared Lock) : 여러 트랜잭션이 동시에 데이터를 읽을 수 있지만, 쓰기 작업은 하나의 트랜잭션만 수행할 수 있다. 2. 배타적 락(Exclusive Lock) : 특정 트랜잭션이 데이터를 읽거나 쓰기 위해 락을 획득하면, 다른 트랜잭션은 해당 데이터에 대한 접근을 금지받는다. 데이터베이스 회복(Database Recovery) 데이터베이스 회복은 시스템 또는 하드웨어 장애, 트랜잭션 오류 등으로 인해 손상된 데이터베이스를 복구하는 과정이다. 장애의 유형 1. 실행 장애 - 사용자의 실수, 무결성 규정 위반 등으로 .. 2023. 10. 14.
트랜잭션 트랜잭션 트랜잭션은 하나의 논리적인 작업을 처리하기 위한 일련의 연산 집합으로서 데이터베이스에서 논리적인 작업의 단위가 된다. Commit 연산 - 트랜잭션 처리가 정상적으로 종료되어 트랜잭션이 수행한 변경 내용을 데이터베이스에 반영하는 연산. - 데이터를 변경한 트랜잭션이 완료되면, 그 트랜잭션에 의해 데이터베이스는 새롭게 일관된 상태로 변경되며, 이 상태는 시스템에 오류가 발생하더라도 취소되지 않는다. Rollback 연산 - 하나의 트랜잭션 처리가 비정상적으로 종료되어 데이터베이스의 일관성이 깨졌을 때 트랜잭션이 행한 모든 변경 작업을 취소하고 이전 상태로 되돌리는 연산이다. - 해당 트랜잭션은 받았던 자원과 잠금을 모두 반환하고, 재시작되거나 폐기된다. SavePoint - 트랜잭션 내에서 일부 .. 2023. 10. 14.
이상현상, 함수적 종속성, 정규화 이상현상 이상현상은 데이터베이스에서 발생하는문제 또는 부작용을 의미한다. 이상현상은 데이터의 무결성이 깨지거나 의도치 않는 결과가 발생하는 현상으로, 주로 데이터의 삽입, 갱신, 삭제 작업이나 쿼리 수행에 따라 발생한다. 1. 삽입 이상(Insert Anomaly) - 데이터를 삽입할 때 발생하는 이상을 의미한다. - 테이블의 일부 속성을 삽입하기 위해 필요한 정보가 부족하거나, 특정 조건을 만족하지 않으면 데이터를 삽입할 수 없는 경우가 이에 해당한다. - 예를 들어, 학생 정보를 담고 있는 테이블에서 학생의 주소와 전화번호가 필요한데, 학생 저보만 삽입 되어 있고 주소나 전화번호 정보가 없는 경우가 있을 수 있다. 2. 갱신 이상(Update Anomaly) - 데이터를 갱신할 때 발생하는 이상을 의.. 2023. 10. 14.
인덱스 (Index) 인덱스? 인덱스는 데이터베이스에서 특정 테이블의 검색 속도를 향상시키기 위한 자료 구조이다. 인덱스는 테이블 내의 열(Column)에 대한 검색을 더 빠르게 수행할 수 있도록 데이터의 논리적인 순서를 유지하고, 검색 연산을 효율적으로 수행할 수 있도록 지원한다. 1. 빠른 검색 : 인덱스를 사용하면 특정 열에 대한 검색 연산(주로 WHERE 조건)을 빠르게 수행할 수 있다. 인덱스는 특정 값이나 범위에 해당하는 레코드를 빠르게 찾아준다. 2. 정렬 및 유지 : 인덱스는 해당 열의 데이터를 정렬하여 저장하고 유지한다. 따라서 정렬된 데이터를 유지함으로써 이진 검색과 같은 효율적인 알고리즘을 사용할 수 있다. 3. 고유성 보장 : 유니크 인덱스는 특정 열의 값이 고유하도록 보장하며, 기본 키 제약 조건을 구.. 2023. 10. 14.