본문 바로가기

DB/MySQL

[MySQL] 데이터베이스 기초 - 1

DB수업은 학교에서 못들어서 여태 하나도 몰랐다.

 

근데 그게 말이 안된다. DB를 하나도 모르는게...

 

코드잇 강의를 알아보다가 너무 비싸서 생활코딩 유튜브를 통해서 공부를 시작했다.

 

강의를 들으며 배운 내용을 나름대로 정리하는 글이다.

 

https://www.youtube.com/user/egoing2/featured

 

생활코딩

일반인에게 프로그래밍을 알려주는 온라인/오프라인 활동 입니다.

www.youtube.com

 

1. 데이터베이스(Database)

 

데이터베이스란 무엇인가?

 

여러 사람이 공유할 목적으로 체계화하여 통합, 관리하는 데이터의 모임.

 

위키백과에 나와있는 정의이다. 별로 와닿지는 않는다.

 

 

2. 데이터베이스의 구조

 

강의 내용을 따라서 서술을 하자면,

 

데이터를 관리, 포함하는 태초에 획기적인 방법이 있었다.

 

바로 파일(file)이다.

 

파일은 필요한 정보만 추출, 정렬 등이 힘들다.

 

다른 방법이라면 스프레드시트(Spread Sheet)가 있다.

 

스프레드시트는 데이터의 구조화가 가능하지만 programming 적인 접근이 불편. 즉, 자동화가 힘들다.

 

그래서 우리가 이용하는 것이 데이터베이스이다.

 

데이터베이스는 기본적으로 표(Table)의 형태라고 할 수 있다.

 

id title description created author profile
1 MySQL MySQL is ... 2020-08-25 23:30:00 egoing developer
2 Oracle Oracle is ... 2020-08-25 23:31:00 egoing developer

각 열(Column)은 속성을 나타내고, 각 행(Row)는 데이터를 나타낸다.

 

이런식으로 표의 형태로 데이터를 저장하는데, 표가 많아지게 되면 다시 그룹화를 할 필요가 있다.

 

# 주의) 하단의 내용은 정확한 정의가 아닌 느낌적인 설명임.

 

이런 여러 Table의 집합을 데이터베이스 혹은 스키마(Schema)라고 한다.

 

이런 스키마들의 집합을 데이터베이스 서버(Server)라고 한다.

 

강의에서 쉽게 이해할 수 있도록 정의를 엄밀히(?) 다루지 않으셨다.

 

실제로 스키마는 관점에 따라 3계층에 나눠서 정의된다.

 

 

3. MySQL 설치

 

나는 윈도우를 쓰는데 강의 상으로 윈도우는 공식페이지에서 설치하지 않고 다른 툴을 이용하신다.

 

나는 그냥 그러기 싫어서 제 3의 방법인 Codeanywhere라는 서비스를 이용하기로 했다.

 

근데 문제가 생겼다. 강의일자는 18년 초라서 그런지 그 때는 완전무료였나보다.

 

지금은 7일 제한에 하루에 2시간만 접속 가능하다.

 

그래서 그냥 공식페이지에서 윈도우에 맞는 설치파일을 받아서 설치했다. 생각보다 간단합니다. : )

 

설치된 MySQL의 버전은 다음과 같다.

 

C:\> mysql --version

mysql  Ver 8.0.21 for Win64 on x86_64 (MySQL Community Server - GPL)

MySQL Community Server를 설치했고, 시스템 변수에 경로 설정을 해서 터미널로 사용하기로 했다.

 

설치하는 중에 비밀번호를 설정하게 될텐데 이게 관리자인 유저명 root의 비밀번호가 된다.

 

까먹지 않는게 나중에 덜 귀찮은 것 같다.

'DB > MySQL' 카테고리의 다른 글

[MySQL] 데이터베이스 기초 - 3  (0) 2020.08.29
[MySQL] 데이터베이스 기초 - 2  (0) 2020.08.26