본문 바로가기

728x90
반응형
SMALL

데이터베이스

(11)
Ch 11. 보안과 권한 관리 01 보안 1. 물리적 환경에 대한 보안 자연재해처럼 물리적 위험으로 부터 보호 2. 권한 관리를 통한 보안 (권한이 없는 사용자로 부터 보호) 사용자별로 데이터베이스 사용범위와 수행 가능한 작업 내용을 제한 3. 운영 관리를 통한 보안 ( 권한이 있는 사용자로 부터 보호) 제약 조건을 정의하고, 사용자들이 정의된 제약조건을 위반하지 않도록 통제 02 권한 관리 권한 관리의 개념 사용자 별로 데이터베이스의 사용 범위와 수행 가능한 작업을 제한할 수 있어 사용자는 허용된 범위에서 데이터 베이스 사용이 가능합니다. 권한의 부여 GRANT 권한 ON 객체 TO 사용자 [WITH GRANT OPTION]; ex) GRANT INSERT, DELETE ON 고객 TO PUBLIC; 권한의 취소 REVOKE 권환 ..
Ch 10. 회복과 병행 제어 01 트랜잭션 트랜잭션의 개념 데이터베이스의 상태를 변화시키는 하나의 논리적인 작업 단위를 의미합니다. 이러한 작업들은 여러 개의 쿼리들로 이루어지며, 모두 성공적으로 완료되거나, 아니면 전혀 적용되지 않아야 합니다. 중간 단계에서 실패하면 이전의 상태로 롤백되어야 합니다. 트랜잭션의 특성 원자성(Atomicity): 트랜잭션은 하나의 논리적인 작업 단위로 간주됩니다. 모든 연산이 성공적으로 수행되거나 전혀 수행되지 않아야 합니다. 하나의 연산이라도 실패하면 이전 상태로 롤백되어야 합니다. 일관성(Consistency): 트랜잭션이 실행되기 전과 실행된 후의 데이터베이스 상태는 항상 일관성이 있어야 합니다. 트랜잭션 실행 전과 후에 데이터베이스에 정의된 규칙들을 만족해야 합니다. 격리성•독립성(Isola..
Ch 9. 정규화 01 정규화의 개념과 이상 현상 정규화의 개념 데이터베이스 설계에서 중복을 최소화하고 데이터의 일관성을 유지하기 위해 데이터를 구조화하는 과정입니다. 데이터베이스 테이블을 설계할 때, 데이터 중복을 제거하고 삽입, 갱신, 삭제 이상(Insertion Anomaly, Update Anomaly, Deletion Anomaly)을 방지하기 위해 정규화를 수행합니다. 이상 현상의 종류 삽입 이상 : 새로운 데이터를 삽입할 때 불필요한 정보가 함께 삽입되거나 삽입이 불가능한 현상 갱신 이상 : 데이터를 갱신할 때 일부 튜플만 갱신되어 정보의 불일치가 발생하는 현상 삭제 이상 : 데이터를 삭제할 때 필요한 정보까지 함께 삭제되는 현상 정규화의 필요성 중복 최소화, 이상현상 방지. 02 함수 종속 결정자가 종속자를..
Ch 8. 데이터베이스 설계 01 데이터베이스 설계 단계 데이터베이스 설계는 다음과 같은 5단계로 진행되며 한 방향으로만 순서대로 진행되지 않고 설계 과정 중에 오류를 발견하여 변경이 필요하면 이전 단계로 되돌아가 설계 내용을 변경할 수도 있습니다 :) 요구 사항 분석 조직의 구성원들이 데이터베이스를 사용하는 용도 파악 (필요한 데이터 종류, 처리방법 같은 요구사항 수집 및 명세서로 작성) 개념적 설계 요구 사항 분석 단계에서 파악한 사용자의 요구 사항을 개념적 데이터 모델을 이용해 표현하며, 명세서를 개념적 데이터 모델로 변환하는 일을 개념적 모델링이라 합니다. 그리고 표현한 결과물을 개념적 구조 또는 개념적 스키마라고 합니다. 논리적 설계 논리적 데이터 모델을 이용해 개념적 설계 단계에서 생성한 개념적 구조를 기반으로 논리적 ..
Ch 7. 데이터베이스 언어 SQL 01 SQL의 소개 SQL은 관계형 데이터베이스를 위한 표준 질의어로 많이 사용되는 언어입니다. 필요한 데이터가 무엇인지 제시하고 데이터를 어떻게 처리해야하는 지 언급할 필요가 없기에 비절차적 데이터 언어의 특징을 띕니다. SQL은 기능에 따라 데이터정의어(DDL), 데이터 조작어(DML), 데이터 제어어(DCL)로 나눕니다. 데이터 정의어: 테이블을 생성하고 변경, 삭제하는 기능을 제공합니다. 데이터 조작어: 테이블에 새 데이터를 삽입하거나, 테이블에 저장된 데이터를 수정, 삭제, 검색 하는 기능을 제공합니다. 데이터 제어어: 보안을 위해 데이터에 대한 접근 및 사용 권한을 사용자별로 부여하거나 취소하는 기능을 하는 언어입니다. 데이터베이스 관리자가 주로 사용합니다. 02 SQL를 이용한 데이터 정의 ..
Ch 6. 관계 데이터 연산 01 관계 데이터 연산의 개념 관계 데이터 연산 관계 대수: 원하는 결과를 얻기 위해 데이터의 처리 과정을 순서대로 기술하는 절차 언어(procedural language)입니다. (원하는 결과를 위해 데이터의 처리 과정을 순서대로 기술) 관계 해석: 원하는 결과를 얻기 위해 처리를 원하는 데이터가 무엇인지만 기술하는 비절차적 언어(nonprocedural language)입니다. (원하는 결과를 얻기 위해 처리를 원하는 데이터가 무엇인지만 기술) 질의: 데이터에 대한 처리 요구 02 관계 대수 관계 대수의 개념과 연산자 관계 대수는 데이터베이스에서 관계(테이블)를 조작하기 위한 수학적인 형식이기 때문에 연산자의 집합으로도 정의할 수 있습니다. 연산자와 함께 연산의 대상이 되는 피연산자가 존재하는데 관계..
Ch 5. 관계 데이터 모델 01 관계 데이터 모델의 개념 관계 데이터 모델의 기본 용어 속성 (Attribute) 릴레이션 내에서 데이터의 특성을 나타내는 열을 의미합니다. 각 속성은 이름과 속성값을 가지며, 릴레이션의 열(column)에 해당합니다. 예를 들어, "이름"이나 "나이"와 같은 개별적인 데이터 항목은 릴레이션의 속성입니다. 튜플 (Tuple) 릴레이션 내에서 데이터의 한 행을 나타냅니다. 튜플은 속성들의 집합으로 구성되며, 릴레이션의 행(row)에 해당합니다. 예를 들어, 릴레이션에 저장된 한 사람의 정보가 한 행으로 구성된 튜플입니다. 도메인 (Domain) 속성이 가질 수 있는 값의 범위를 나타냅니다. 도메인은 속성에 대한 제약 조건이며, 속성값이 해당 도메인에 속하는 값으로 제한됩니다. 예를 들어, "나이" 속..
Ch 4. 데이터 모델링 01 데이터 모델링과 데이터 모델의 개념 데이터 모델링 현실 세계의 데이터를 추상화하여 데이터베이스 시스템에 표현하는 과정입니다. 이 과정은 데이터의 구조, 관계, 특성 등을 분석하고 설계함으로써 데이터의 효율적인 관리와 처리를 가능하게 합니다. 데이터 모델링은 데이터베이스 시스템을 구축하기 전에 수행되며, 다양한 요소를 고려하여 데이터의 구조와 관계를 정의합니다. 이를 통해 데이터의 일관성, 무결성, 보안성 등을 유지하면서 데이터에 접근하고 조작하는 방법을 결정할 수 있습니다. 데이터 모델링은 개념적 모델링과 논리적 모델링으로 이루어져 있습니다 :) 개념적 모델링 (개체 - 관계모델 (entity - relationship)) 현실 세계의 개념과 관계를 추상화하여 표현합니다. 개념적 모델링은 현상이나 ..

728x90
반응형
LIST