-
[포스코x코딩온] 데이터베이스(DBMS 기본, MySQL 설치)[포스코x코딩온] 웹개발자 풀스택 부트캠프8기 2023. 8. 3. 17:04728x90
파일 시스템(File System)
- DBMS를 사용하기 전 데이터의 저장을 위해 이용했던 시스템
- 단점
- 데이터 중복
- 데이터 불일치
데이터베이스(Database)
- 어느 한 조직에서 업무 처리를 위해 다수의 응용 시스템 혹은 다수의 사용자들이 공용으로 사용하기 위해 통합, 저장된 운영 데이터의 집합
- 데이터를 저장하는 구조/자료의 모음
- 데이터의 집합소
- 중복이 없어야 한다
DBMS
- DataBase Management System
- 종래 파일 시스템의 문제점인 데이터의 중복성과 종속성 등의 문제를 최소화하기 위해 등장
- 사용자와 데이터베이스 간의 중계 역할
- 데이터베이스의 내용을 정의하고, 조작, 제어할 수 있도록 함으로써 모든 사용자나 응용 프로그램들이 데이터베이스를 공유할 수 있도록 관리, 운영해 주는 소프트웨어 시스템
- 파일 시스템이 가진 문제를 해결하기 위해 만들어진 것
- 장점
- 데이터의 중복성과 종속성 최소화
- 데이터의 일관성 유지
- 데이터의 무결성 유지
- 사용자 간의 데이터 공유가 가능
- 데이터의 보안 유지가 가능
- 데이터의 표준화 구현이 가능
- 단점
- 많은 운영비가 소요
- 자료 처리가 복잡
- Backup과 Recovery의 어려움이 있다.
- 관계형 데이터베이스
- RDBMS(Relational DBMS)
데이터베이스 언어
- 정의어(DDL: Data Definition Language)
- 데이터베이스 구조를 정의 및 수정 등을 위해 사용되는 언어
- CREATE, DROP, ALTER
- 조작어(DML: Data Mainpulation Language)
- 데이터베이스 내의 자료를 검색, 삽입, 수정, 삭제하기 위해 사용되는 언어
- SELECT, INSERT, UPDATE, DELETE
- 제어어(DCL: Data Control Language)
- 데이터베이스의 데이터에 대해 무결성 유지, 병행 수행 제어, 보호와 관리를 위한 언어
- COMMIT, ROLLBACK, GRANT, REVOKE
데이터베이스 용어
- 열(Column, Attribute, 속성)
- 행(Record, Tuple, 튜플)
- 테이블(Table, Relation)
Key의 종류
- 데이터베이스에서 튜플을 찾거나 순서대로 정렬할 때 구분하고 정렬의 기준이 되는 속성
- 관계 데이터베이스에서 튜플을 식별하기 위해 사용하는 속성이나 속성의 집합
- 후보키(Candiate Key)
- 릴레이션에서 각 튜플을 유일하게 식별할 수 있는 속성이나 속성의 집합
- 유일성과 최소성을 모두 만족해야 한다.
- 기본키(PK, Primary Key)
- 메인 키로 한 테이블에서 특정 튜플(행)을 유일하게 구별할 수 있는 속성
- 후보키 중에서 튜플을 식별하기 위해 특별히 선택된 키
- 유일성과 최소성을 만족해야 한다.
- Null 값 불가
- 중복 값 불가
- 대체키(Alternate Key)
- 후보키 중에서 기본키를 제외한 속성
- 외래키(FK, Foreign Key)
- 하나의 테이블에서 원하는 자료를 얻지 못하는 경우 다른 테이블을 참조하기 위해 사용되는 속성
- 어떤 테이블의 기본키를 참조하는 속성
- 참조 릴레이션의 기본키와 같아야 한다.
- Null 값 가능
- 슈퍼키(Super Key)
- 한 릴레이션 내의 튜플들을 식별할 수 있는 후보키와 다른 속성들과의 모든 조합
- 유일성은 만족하지만 최소성은 만족하지 않는다.
※ Null 이란,
- 공백, 숫자 0과 다르다
- 아직 정의되지 않은 미지의 값
- 현재 데이터를 입력하지 못하는 경우를 의미
MySQL
- 가장 널리 사용되고 있는 관계형 데이터베이스 관리 시스템(RDBMS)
- 오픈 소스
- 원도우, Mac, 리눅스 등 다양한 운영체제에서 사용 가능
설치
MySQL :: Download MySQL Community Server
Select Version: 8.1.0 Innovation 8.0.34 5.7.43 Select Operating System: Select Operating System… Microsoft Windows Ubuntu Linux Debian Linux SUSE Linux Enterprise Server Red Hat Enterprise Linux / Oracle Linux Fedora Linux - Generic Oracle Solaris macOS
dev.mysql.com
- 쭉 설치하면 된다. 중간에 비밀번호 설정하라고 뜨는데 이때 비밀번호를 꼭 기억해야 한다!!! 앞으로 MySQL 접속할 때마다 사용할 것이다.
실행 방법
- cmd
- mysql 설치된 경로로 이동 (cd "C:\Program Files\MySQL\MySQL Server 8.0\bin")
- 사용자명 root, 비밀번호 사용해 mysql 접속(mysql -u root -p)
- mysql 종료(quit / exit)
- MySQL Workbench
- GUI로 설치 시 함께 설치된다.
- 데이터를 시각적으로 확인하기 편리하다.
- 콘솔(git bash, terminal 등)에서도 동일한 작업이 가능하다.
오늘부터 데이터베이스 수업을 진행하였다. 데이터베이스는 학교에서 개념 수업이랑 MariaDB를 사용했던 기억이 있다. 그 기억을 되살려서 MySQL 수업을 열심히 들어야겠다.
728x90'[포스코x코딩온] 웹개발자 풀스택 부트캠프8기' 카테고리의 다른 글
[포스코x코딩온] MVC패턴(데이터베이스X) (1) 2023.08.05 [포스코x코딩온] 데이터베이스(SQL문(DDL,DML,DCL) (0) 2023.08.04 [포스코x코딩온] 동적form전송, 파일 업로드 실습 (0) 2023.08.03 [포스코x코딩온] 파일업로드(multer, Axios 동적 파일 업로드) (0) 2023.08.02 [포스코x코딩온] 동적 form 전송(비동기 http 통신, ajex, axios, fetch, JSON) (0) 2023.08.02