ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [포스코x코딩온] 데이터베이스(DBMS 기본, MySQL 설치)
    [포스코x코딩온] 웹개발자 풀스택 부트캠프8기 2023. 8. 3. 17:04
    728x90

    파일 시스템(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
      1. mysql 설치된 경로로 이동 (cd "C:\Program Files\MySQL\MySQL Server 8.0\bin")
      2. 사용자명 root, 비밀번호 사용해 mysql 접속(mysql -u root -p)
      3. mysql 종료(quit / exit)
    • MySQL Workbench
      • GUI로 설치 시 함께 설치된다.
      • 데이터를 시각적으로 확인하기 편리하다.
      • 콘솔(git bash, terminal 등)에서도 동일한 작업이 가능하다.


    오늘부터 데이터베이스 수업을 진행하였다. 데이터베이스는 학교에서 개념 수업이랑 MariaDB를 사용했던 기억이 있다. 그 기억을 되살려서 MySQL 수업을 열심히 들어야겠다. 

    728x90
Designed by Tistory.