본문 바로가기

BackEnd/DB(SQL)

[DB_MySQL] 이것이 MySQL이다 ch01(DBMS, MySQL)

728x90
반응형

1. DBMS 개요

 (1) 데이터베이스의 정의와 특징

   ◎ 데이터베이스

      ▷ 데이터의 집합

      ▷ 여러명의 사용자나 응용프로그램이 공유하는 데이터들

      ▷ 동시에 접근 가능해야합니다.

      ▷ 데이터의 저장 공간 자체

 

   ◎ DBMS

      ▷ 데이터베이스를 관리, 운영하는 역할

 

   ◎ DBMS 개념도

 

 (2) DB/DBMS의 특징

   ◎ 데이터의 무결성 (Integrity)

      ▷ 데이터베이스 안의 데이터는 오류가 없어야합니다.

      ▷ 제약 조건(Constrain)이라는 특성을 가집니다.

 

   ◎ 데이터의 독립성

      ▷ 데이터베이스 크기를 변경하거나 데이터 파일의 저장소 변경시

           기존에 작성된 응용프로그램은 전혀 영향을 받지 않아야 합니다.

 

   ◎ 보안

      ▷ 데이터베이스 안의 데이터에 데이터를 소유한 사람이나 데이터에 접근이 허가된 사람만 접근할 수 있어야합니다.

      ▷ 접근할 때도 사용자의 계정에 따라서 다른 권한을 가집니다.

 

   ◎ 데이터 중복의 최소화

      ▷ 동일한 데이터가 여러 개 중복되어 저장되는 것 방지

 

   ◎ 응용프로그램 제작 및 수정이 쉬워짐

      ▷ 통일된 방식으로 응용프로그램 작성 가능

      ▷ 유지 보수 또한 쉬워짐

 

   ◎ 데이터의 안정성 향상

      ▷ 대부분의 DBMS가 제공하는 백업, 복원 기능 이용

      ▷ 데이터가 깨지는 문제가 발생할 경우 원상으로 복원, 복구하는 방법이 명확해집니다.

 

 

 (3) 데이터베이스의 발전

   ◎ 오프라인 관리

      ▷ 종이에 연필로 기록해 장부로 관리

 

   ◎ 파일시스템 사용

      ▷ 컴퓨터 파일에 기록/저장 - 메모장, 엑셀 활용

      ▷ 컴퓨터에 저장된 파일의 내용은 읽고, 쓰기가 편한 약속된 형태의 구조 사용

      ▷ 데이터의 양이 많아지면 데이터 중복으로 인한 불일치 위험

 

   ◎ 데이터베이스 관리시스템

      ▷ 파일시스템의 단점 보완

      ▷ 대량의 데이터를 보다 효율적으로 관리하고 운하기 위해 사용

      ▷ DBMS - DataBase Management System

      ▷ 데이터의 집합인 '데이터베이스'를 잘 관리하고 운영하기 위한 시스템 또는 소프트웨어

 

   ◎ SQL(Structured Query Language)

      ▷ DBMS에 데이터 구축/관리/활용 위해서 사용되는 언어

      ▷ DBMS를 통해 중요한 정보들을 입력, 관리, 추출

 

 (4) DBMS 분류

   ◎ 계층형 DBMS

      ▷ 처음으로 나온 DBMS 개념 - 1960년대에 시작

      ▷ 각 계층은 트리 Tree 형태, 1:N 관계

      ▷ 문제점

         ▶ 처음 구축한 이후 그 구조를 변경하기가 상당히 까다로움

         ▶ 주어진 상태에서의 검색은 상당히 빠름

         ▶ 접근 유연성 부족해서 임의의 검색에는 어려움

 

   ◎ 망형 DBMS

      ▷ 계층형 DBMS의 문제점을 개선하기 위해 1970년대에 시작

      ▷ 1:1, 1:N, N:M(다대다) 관계 지원 - 효과적이고 빠른 데이터 추출

      ▷ 복잡한 내부 포인터 사용

         ▶ 프로그래머가 이 모든 구조를 이해해야만 프로그램의 작성 가능

 

   ◎ 관계형 DBMS(Relational DBMS)

      ▷ 1969년 E.F.Codd라는 학자가 수학 모델에 근거해 고안

      ▷ 데이터베이스는 테이블 Table이라 불리는 최소 단위로 구성

      ▷ 이 테이블은 하나 이상의 열로 구성

 

      ▷ 장점

         ▶ 다른 DBMS에 비해 업무가 변화될 경우 쉽게 변화에 순응

         ▶ 유지보수 측면에서도 편리

         ▶ 대용량 데이터의 관리와 데이터 무결성(Integration) 보장

 

      ▷ 단

         ▶ 시스템 자원을 많이 차지해 시스템이 전반적으로 느려지는 것(하드웨어 발전되어 해결)

 

 

 (5) SQL 개요

   ◎ SQL(Structured Query Language)

      ▷ 관계형 데이터베이스에서 사용되는 언어, '에스큐엘' 또는 '시퀄'

      ▷ DBMS 제작 회사와 독립적

      ▷ 다른 시스템으로 이식성이 좋음

      ▷ 표준이 계속 발전 중

      ▷ 대화식 언어

      ▷ 분산형 클라이언트/서버 구조

 

2. MySQL 소개

   ◎ MySQL의 개요와 변천사

      ▷ Oracle사에서 제작한 DBMS 소프트웨어

         ▶ 대량의 데이터를 관리해주는 소프트웨어

      ▷ 오픈 소스 (Open Source)로 제공

 

3. MySQL의 에디션 및 기능 비교

   ◎ 상용 에디션

      ▷ Standard, Enterprise, Cluster CGE

      ▷ 비용이나 기능면 비교

         ▶ Standard < Enterprise < Cluster CGE

 

   ◎ 무료 에디션

      ▷ Community

      ▷ Enterprise 버전과 기능상 차이는 거의 없음

      ▷ 사용 허가에 대한 라이센스 차이

 

 

DB에 대해 시작해보았습니다.

처음 개념들을 보았는데 역시 개념은 이해하기 어렵네요,,ㅎㅎ

 

그치만 DB도 열심히 달려보겠습니다!!

 

많은 분들의 피드백은 언제나 환영합니다! 많은 댓글 부탁드려요~~

 

728x90
반응형