데이터베이스란?
- 여러 사람이 공유하여 사용할 목적으로 체계화해 통합, 관리하는 데이터의 집합
- 파일들을 저장할때 데이터들을 저장해야할 필요가 있음
- 클래스에 복합되어있어서 회원정보라는 틀 안에 아이디, 비밀번호, 주소 등 하나의 개념적인 데이터를 저장한다.
- 원래 파일에 저장하던 시스템을 DB에 테이블 형태로 저장한다.
- 개발자가 어플리케이션 작동할때 UI에서 사용자들한테 입력받은 것들을 DB로 받음
데이터베이스가 쓰이는 예시
- 학교 : 서무과에서는 등록금 납입 내역을, 도서관에서는 도서 대여 내역을 각각 관리함
(재학생에게만 도서 대여 자격을 부여하기위해 서무과의 등록금 납입 내역 정보가 필요함)
- 은행 : 각 지점별 입출금내역을 각각 관리함
- 관공서 : 각 기관별 업무정보를 각각 관리함
Database의 장점
- 데이터의 기지化 (데이터를 한 곳에 모아 놓고 사용)
- 실시간으로 접근이 가능하고 동시 공유 및 지속적으로 변화 가능
- 데이터의 논리적 독립성을 보장할 수 있음
- 프로세서, 메모리, 스토리지, 네트워크 기술을 활용함
DBMS의 탄생
- 데이터베이스를 사용함으로써 시스템이 복잡해지면서 엑세스가 집중되면 과부하가 발생하게됨
- 이로 인해 많은 비용이 부담되고 데이터 백업과 복구가 어려움
- 데이터베이스 전문가의 필요성이 대두됨
- DBMS란, database management system의 약어로, 데이터베이스를 관리해주는 소프트웨어를 말함
- 사용자 인증, 동시성 문제를 해결해줌
- 명령어(SQL)를 이용하여 처리함
- 1990년대 초 들어서 모든 대형 데이터 처리 애플리케이션을 관계형(링크가 아닌 내용을 기준) 시스템들이 지배
- 질의(Query)하는 클라이언트와 이를 처리하는 서버 구조로 이루어짐
DBMS 프로그램 점유율
https://db-engines.com/en/ranking
- IBM DB2, 오라클, MySQL, 마이크로소프트 SQL 서버는 최상위 DBMS
- 상용프로그램 중에서는 Oracle 이 꽉 잡고 있다. (MySQL이 2위)
- MySQL에서 만든 상용프로그램 : MariaDB
개발자가 쿼리를 알아야하는 이유?
- 애플리케이션에서 문제가 생겼을때 어디서 문제가 발생한 것인지 알아야해서
- 서비스 기능을 설계하고 객체를 생성하여 DB모델링을 해서 테이블로 만들어 규격화해야함
SQL이란 ?
- 개체 관계형 데이터베이스를 지원하기 위해 1974년 IBM 연구소에서 만든 SQL(Structured Query Language)
- 원어(SEQUEL) : Structured English Query Language
- DBMS에 질의를 하기 위한 언어(명령어 집합)를 말한다.
- 구조화된 데이터를 예약어/자료형/구문/연산자 등으로 서버(DBMS)에 요청
- 한 마디로, 구조적으로 질의하는 언어이다. (그냥 명령문이라 생각하기)
cmd (명령 프롬프트)에서 mysql 실행하기
W3school 에서 mysql 실행하기
'🛢 3. Database > 3-1 Mysql' 카테고리의 다른 글
[Database] 06. 테이블 수정 및 업무 테이블 준비하기 (0) | 2021.09.10 |
---|---|
[Database] 05. 데이터 타입 (0) | 2021.09.09 |
[Database] 04. 테이블 생성하기 (0) | 2021.09.08 |
[Database] 03. 데이터베이스와 계정 생성하기 (0) | 2021.09.07 |
[Database] 02. MySQL DBMS 설치하기 (0) | 2021.09.06 |
댓글