#1 MySQL
1) Database와 DBMS를 개발자가 아닌 사람에게 설명해보세요.
도서관에 있는 책들 : Database
도서관의 사서 or 도서 정보를 찾아주는 컴퓨터 : DBMS
더보기
데이터베이스의 특성
- 실시간 접근성(Real-time Accessability)
- 사용자의 요구를 즉시 처리할 수 있다.
- 계속적인 변화(Continuous Evolution)
- 정확한 값을 유지하려고 삽입·삭제·수정 작업 등을 이용해 데이터를 지속적으로 갱신할 수 있다.
- 동시 공유성(Concurrent Sharing)
- 사용자마다 서로 다른 목적으로 사용하므로 동시에 여러 사람이 동일한 데이터에 접근하고 이용할 수 있다.
- 내용 참조(Content Reference)
- 저장한 데이터 레코드의 위치나 주소가 아닌 사용자가 요구하는 데이터의 내용, 즉 데이터 값에 따라 참조할 수 있어야 한다.
데이터베이스 관리 시스템 (Database Management System = DBMS)
- 데이터베이스를 관리하는 소프트웨어
- 여러 응용 소프트웨어(프로그램) 또는 시스템이 동시에 데이터베이스에 접근하여 사용할 수 있게 한다
- 필수 3기능
- 정의기능 : 데이터 베이스의 논리적, 물리적 구조를 정의
- 조작기능 : 데이터를 검색, 삭제, 갱신, 삽입, 삭제하는 기능
- 제어기능 : 데이터베이스의 내용 정확성과 안전성을 유지하도록 제어하는 기능 - Oracle, SQL Server, MySQL, DB2 등의 상용 또는 공개 DBMS가 있다.
데이터베이스 관리 시스템의 장/단점
- 장점
- 데이터 중복이 최소화
- 데이터의 일관성 및 무결성 유지
- 데이터 보안 보장 - 단점
- 운영비가 비싸다
- 백업 및 복구에 대한 관리가 복잡
- 부분적 데이터베이스 손실이 전체 시스템을 정지
2) DBMS는 여러 명의 사용자가 동시에 접속해서 사용할 수 있다.
그런데, 개인용 PC에 설치된 MySQL은 항상 켜져 있는 것이 아닐 테니,
여러 사람이 동시에 이용하기 어려울 것이다.
여러 사람이 동시에 항상 접속해서 사용할 수 있으려면 MySQL을 어떤 컴퓨터에 설치하고 운영해야 할까?
24시간 작동 중인 컴퓨터에 MySQL을 설치하면 된다.
이를 서버 컴퓨터라고 부르고 이 서버 컴퓨터를 모아서 관리해주는 업체를 IDC라고 한다.
3) MySQL 프로세스가 운영체제에 실행되고 있는지 확인하려면 어떻게 해야 할까?
4) DBMS에는 많은 사람들이 동시에 접속해서 사용한다.
만약 사용자가 사용하는 도중에 MySQL서버가 종료된다면 어떤 일이 벌어질까?
사용자가 원하는 CRUD가 이루어지지 않을 것이다.
하지만 DBMS의 관리하에 데이터 손실 방지등을 통해 안정성은 유지된다.
'Record > boostcourse' 카테고리의 다른 글
[boostcourse] 2. 웹 백엔드 프로그래밍 기초 생각해보기 #2 (0) | 2021.07.20 |
---|---|
[boostcourse] 2. 웹 백엔드 프로그래밍 기초 생각해보기 #1 (0) | 2021.07.20 |
[boostcourse] 1. SQL & JDBC 프로그래밍 생각해보기 #3 ~ #5 (0) | 2021.07.20 |
[boostcourse] 1. SQL & JDBC 프로그래밍 생각해보기 #2 (0) | 2021.07.19 |
[boostcourse] 부스트코스 웹 백엔드 과정을 시작하기 앞서 (2) | 2021.07.16 |
댓글