#1. 데이터베이스 시스템의 이해

1. 자료와 정보의 구분

1) 자료(DATA)

  • 어떠한 측정을 통해 얻은 단순한 값
  • 현실 세계에 대한 관찰(사용자 입력, 선택)을 통해 얻은 사실
  • 처리되지 않은 데이터
    • ex) 온도, 습도, 날씨 등의 순수한 값들

 

2) 정보(Information)

  • 자료를 가공하여 얻은 값 (자료에 가치를 부여한다)
  • 자료에 대한 분석을 통해서 얻은 지식
  • 의사 결정을 위한 지식
    • ex) 출근하는 사람에게 날씨 정보는 우산을 챙길지에 대한 여부를 결정하는 정보가 된다.

 

3) 자료와 정보의 관계

  • 자료란 그 자체만으로는 아무런 의미가 없는 키워드일 뿐이다.
  • 자료의 가공 = 프로그래밍
  • 자료를 활용하는 프로그램은 해당 자료에 의미를 부여하고, 그를 통해 의사결정이 가능하도록 정보화 한다.

 

2. 데이터베이스

1) 데이터베이스란?

  • 공유(여러 종류의 프로그램, 연동)하여 사용될 목적으로 통합하여 관리하는 데이터 집합
  • 전통적인 데이터 저장 방법인 파일시스템(File System)의 경우, 어떠한 자료를 찾으려 할 때 바이트스트림(Byte Stream)처음부터 읽기 시작하고, 중간에 데이터를 변경하거나 추가/삭제 하기 어려운 점이 있으며, 데이터의 중복이나 불일치 현상이 발생할 수 있다.
  • 특히 대용량 데이터일 경우 이러한 단점이 더욱 심각해지는 경향이 있다.
  • 또 파일 내용의 접근 권한 설정이 미흡하여 중요한 데이터에 대한 보안 이슈가 있다.

 

2) DBMS(Database Managerment System)

사용자(개발자)가 새로운 데이터베이스(자료가 저장된 file)의 생성 및 구조를 명시할 수 있도록 하며, 데이터를 효율적으로 검색, 수정, 삽입, 삭제할 수 있도록 하여 시스템의 고장이나 권한이 없는 사용자의 접근 등으로 부터 데이터를 안전하게 보호하고 관리하는 소프트웨어 패키지이다.

- 데이터베이스 관리

  • 사용자가 새로운 데이터베이스를 생성하고 구조를 명시할 수 있다.

- 효율적 데이터 관리

  • 데이터를 효율적으로 검색, 수정, 삽입, 삭제할 수 있도록 한다.
  • 데이터의 중복을 제어한다.

- 데이터 안정성

  • 시스템의 고장으로 부터 데이터를 안전하게 보호한다.

- 데이터 접근 제어

  • 권한이 없는 사용자가 데이터에 접근할 수 없도록 한다.

 

3. SQL(Structured Query Language)

데이터베이스에 저장된 데이터를 입력, 수정, 삭제, 조회 하는 등의 조작이나, 테이블을 비롯한 다양한 객체(시퀀스, 인덱스 등) 를 생성 및 제어하는 언어를 말한다.

 

1) DDL(Data Defintion Language)

  • 데이터 정의어
  • 데이터베이스 관리자나 응용 프로그래머가 데이터베이스의 논리적 구조를 정의하기 위한 언어

 

2) DML(Data Manipulation Language)

  • 데이터 조작어
  • 데이터베이스에 저장된 데이터를 조작하기 위해 사용
  • 검색, 추가, 삭제, 갱신 작업을 수행한다.

 

3) DCL(Data Control Language)

  • 데이터 제어어
  • 데이터에 대한 접근 권한 부여 등 데이터베이스 시스템 및 트랜젝션을 관리하기 위한 언어

 

4. 데이터베이스 접근하기

1) 서버와 클라이언트

  • 서버: 다른 프로그램의 요청에 적절한 결과를 만들어 응답을 보내는 역할을 하는 소프트웨어
  • 클라이언트: 서버에 접속해 요청을 보내기 위한 소프트웨어. 서버가 사용하는 통신 규격을 따라야 한다.

 

2) 데이터베이스 서버

  • MySQL, Oracle, MSSQL과 같은 DBMS는 다른 프로그램의 요청에 따라 데이터를 조회, 입력, 수정, 삭제하고, 그에 따른 결과를 돌려주는 역할을 하기 때문에 데이터베이스 서버 라고 부른다.
  • 웹 브라우저의 종류가 다양하듯 MySQL에 접속하기 위한 클라리언트도 다양하다.

 

3) MySQL

  • 특별한 GUI(Graphic User Interface)가 없는 터미널(명령프롬프트) 기반의 프로그램이므로 사용법을 별도로 익힐 필요가 없다.
  • SQL문의 학습에만 집중할 수 있기 때문에 처음 SQL을 공부하는 경우 매우 적합하다.
mysql -uroot -p
  • 실행시 위 명령어를 통해 실행한다.

'국비수업 > MySQL' 카테고리의 다른 글

[MySQL] 그룹 조회 / 조인(JOIN)  (0) 2022.06.10
[MySQL] SQL함수  (0) 2022.06.09
[MySQL] SQL 연산자 / 정렬, 부분조회  (0) 2022.06.09
[MySQL] 데이터베이스 조회하기  (0) 2022.06.08
[MySQL] Mac에 MySQL 설치하기  (0) 2022.06.08

+ Recent posts