1. 데이터베이스와 DBMS

1. 데이터베이스(Database)란?

데이터베이스는 '구조화된 데이터의 집합'으로, 방대한 정보를 체계적으로 저장하여 효율적으로 관리할 수 있도록 한다.

디지털화된 다양한 데이터를 저장하고 관리함으로써 사용자가 원하는 정보를 빠르게 활용할 수 있다.

 

 

2. DBMS(Database Management System)란?

 DBMS는 ' 데이터베이스를 관리하는 소프트웨어'로, 데이터를 생성(Create), 조회(Read), 수정(Update), 삭제(Delete)하는 등의 기능을 제공한다.

쉽게 말해, 데이터베이스가 '데이터 창고'라면, DBMS는 '데이터 창고 관리자'라고 할 수 있다.

 

DBMS의 핵심 기능

1) 효율적인 데이터 관리: 데이터를 테이블 형태로 조직화하여 저장하고, 여러 테이블 간 관계를 설정해 검색과 관리를 용이하게 함

2) 데이터 무결성 유지: 데이터가 정확하고 일관되도록 자료형, 범위 등의 제약 조건을 제공

3) 동시성 제어: 여러 사용자가 동시에 데이터를 수정할 때 발생할 수 있는 문제를 관리

4) 보안 관리: 특정 사용자만 데이터에 접근할 수 있도록 접근 제어 기능 제공

5) 백업 및 복구: 데이터 손실 시 기존 데이터로 복구할 수 있도록 저장 및 복원 기능 제공

6) 쉬운 데이터 접근성: SQL과 같은 표준화된 질의 언어를 지원하여 쉽게 데이터 검색 및 활용 가능

7) 데이터 추상화: 복잡한 데이터 저장 구조를 몰라도 쉽게 데이터를 다룰 수 있도록 함

 

 

3. SQL(Structured Query Language)

SQL은 '데이터베이스를 관리하기 위한 표준 질의 언어'이다.

SQL 명령을 사용하여 데이터를 생성, 조회, 수정, 삭제할 수 있으며, DBMS를 통해 실행된다.

 

 

4. 데이터베이스 파일(Database Files)

DBMS는 데이터를 다양한 파일 형태로 저장하고 관리한다. 

 

주요 파일 유형

- 데이터 파일(Data File): 실제 데이터를 저장하는 파일

- 로그 파일(Log File): 데이터베이스의 변경 사항을 기록하여 장애 발생 시 복구에 사용

- 인덱스 파일(Index File): 검색 속도를 높이기 위해 필요한 정보를 저장

- 설정 파일(Configuration File): 데이터베이스의 설정 및 성능 조정 정보를 저장

- 메타데이터 파일(Metadata File): 데이터베이스 구조와 스키마 정보를 저장

 

 

5. 테이블(Table) 구조

데이터베이스에서 데이터를 저장하는 기본 단위는 테이블(Table)이다.

 

- 열(Column)/속성(Attribute) : 데이터의 특정 속성을 나타냄

- 행(Row)/레코드(Record)/튜플(Tuple): 하나의 데이터 항목을 의미

 

각 열은 특정한 데이터 속성을 나타내고, 각 행은 속성이 모인 하나의 데이터 단위를 나타낸다.

 

 

6. MySQL 실습 환경 구성

MySQL은 서버-클라이언트(Server-Client) 구조로 동작한다.

 

- 서버(Server): 데이터베이스를 관리하고 요청을 처리하는 역할 (MySQL 서버)

- 클라이언트(Client): 서버에 요청을 보내고 응답을 받는 역할 (MySQL 워크벤치)

 

MySQL 실습 환경을 구축하려면 다음 프로그램을 설치해야 한다.

 

1) MySQL 서버(MySQL Server) - 실제 데이터베이스를 운영하는 DBMS

2) MySQL 워크벤치(MySQL Workbench) - 데이터베이스와 상호작용하는 클라이언트 도구

'학습 > DB' 카테고리의 다른 글

6. 관계와 제약조건  (0) 2025.02.26
5. 자료형과 필터링  (1) 2025.02.23
4. 집계 함수 및 데이터 처리  (0) 2025.02.21
3. SQL 데이터 필터링과 연산자 정리  (0) 2025.02.20
2. 데이터 CRUD  (0) 2025.02.19