MySQL
[MySQL] 데이터 베이스란?
sweetychocoding
2023. 9. 21. 11:10
728x90
데이터베이스란?
- 빠른 탐색과 검색을 위해 조직된 데이터의 집합체
DBMS(DataBase Management System)
: Oracle, Mysql, Maria…
- 데이터베이스를 관리하기 위한 시스템
- 주요기능
- 데이터의 추가, 조회, 변경, 삭제 ⇒ CRUD (Create, Read, Update, Delete)
- 데이터의 무결성(integrity) 유지 ⇒ 제약조건
- 트랜잭션 관리 ⇒ 데이터의 일관성 유지
- 데이터의 백업 및 복원
- 데이터 보안
- 최고의 DBMS는 데이터를 효과적으로 처리하며 사용자의 데이터를 정확한 기록으로 유지할 수 있도록 도와주며 데이터 구성, 조작, 검색을 제공하고 적시에 원하는 정보에 엑세스하도록 하는 것
JDBC (Java Database Connectivity)
- 자바의 API(Application Programming Interface)의 하나로서 데이터베이스에 연결해, 데이터베이스 안에 데이터를 검색하고 데이터를 변경할 수 있게 함

RDBMS (Relational DataBase Management System)
- '구조화'가 특징으로, 데이터 베이스 안에서 데이터들 사이의 관계성을 가지는 데이터들을 다루며, 구조적(table형태)으로 데이터를 저장함
- RDBMS에서는 키(key)를 통해서 연관된 정보들을 함께 조회하는데 특화됨
테이블이란?
- 데이터가 저장되는 가상의 장소
- 하나의 테이블에서는 데이터(tuple, record라고도 부름, 행)를 수백, 수천, 수만, 수백만개 저장
- 1개 이상의 칼럼으로 구성
- 각 칼럼은 타입을 가지며, 값의 길이나 가질 수 있는 값 등의 제약을 갖음
- ⇒ 이러한 테이블의 구성을 **스키마 (schema)**라고 함
- 칼럼의 모음을 레코드(tuple, record)라고 표현
- ⇒ 하나의 테이블은 여러 개의 레코드로 구성
- 데이터는 많은 속성(attributes, 열)가짐
- ⇒ 속성들에는 나이, 이름, 사는 지역, 핸드폰 번호 등등 데이터의 특징을 나타낼 수 있는 범주로 구성
- 이런 속성들은 number, varchar2 와 같은 데이터 타입들로 나타냄
- 이런 데이터 타입이나 comment, 컬럼 이름들은 Schema(스키마) 라는 것으로 테이블의 큰 정보를 저장


주요키(Primary Key)란?
- 각각의 레코드를 구별하기 위해 사용되는 것
- 각 레코드가 서로 다른 값을 갖는 칼럼 (유일성)
- 주요키 값을 이용하여 빠른 검색 가능
인덱스란?
- 지정한 칼럼에 맞춰 데이터의 정렬 순서를 미리 계산
- 주요키, unique 인덱스 자동 생성됨
- 인덱스로 사용되는 칼럼은 중복된 값을 가질 수도 있음
728x90