MySQL이란?

코딩을 합시다·2023년 4월 18일
0

MySQL

  • 가장 널리 사용되고 있는 관계형 데이터베이스 관리 시스템이다.(RDBMS)
  • 오픈 소스이며 다중 사용자와 다중 스레드를 지원함.
  • C, Cpp, JAVA, PHP, Pyton 등 여러 프로그래밍 언어를 위한 다양한 API를 제공함
  • MySQL은 윈도우, 리눅스 등 다양한 운영체제에서 사용 가능하며 Apache, PHP와 함께 웹 개발에 자주 사용됨
  • APM의 M MySQL or (MariaDB) 등 Apache, PHP와 호환성이 좋기에 사용한다
  • MySQL은 오픈 소스 라이선스를 따르지만, 상업적 이용시 상업 라이센스를 필히 구매하여야 한다.

DataBase(데이터베이스)

데이터베이스란?

  • 데이터의 저장소 또는 통합하여 관리되는 데이터의 집합체를 의미
  • 중복 데이터 제거, 자료 구조화, 효율적 처리를 통해 관리됨
  • 응용 프로그램과 다른 별도의 미들웨어에 의해 관리됨
  • 데이터베이스를 관리하는 이러한 미들웨어를 데이터베이스 관리 시스템 (DBMS: Database Management System)라 한다.

데이터베이스의 특징

  1. 사용자의 쿼리(질의)에 대해 즉각적 처리와 응답이 이루어짐
  2. 생성, 수정, 삭제를 통해 항상 최신 데이터를 유지함
  3. 사용자가 원하는 데이터를 동시에 공유 가능
  4. 사용자가 원하는 데이터를 주소가 아닌 내용에 따라 참조
  5. 응용 프로그램과 데이터베이스는 독립되어 있음으로, 데이터의 논리적 구조와 응용프로그램은 별개로 동작

SQL(Structured Query Language)

데이터베이스에서 데이터를 저장 또는 얻기 위해서 사용하는 표준화된 언어.

SQL 구문은 위의 목적에 맞게 3가지로 구분됨.

DML(Data Manipulation Language)

  • 데이터 조작 언어

  • 데이터를 조작 선택, 삽입, 수정, 삭제 하는데 사용되는 언어

  • DML 구문이 사용되는 대상은 테이블의 행

  • DML 사용하기 위해서는 꼭 그 이전에 테이블이 정의되어 있어야 함

  • SQL 문 중 SELECT, INSERT, UPDATE, DELETE가 이 구문에 해당

  • 트랜잭션 Transaction이 발생하는 SQL도 이 DML에 속함

    • 테이블의 데이터를 변경 입력 수정 삭제 할 때 실제 테이블에 완전히 적용 X 임시로 적용 하는 것 O
    • 취소 가능

DDL(Data Definition Language)

  • 데이터 정의 언어
  • 데이터베이스, 테이블, 뷰, 인덱스 등의 데이터
  • 베이스 개체를 생성 삭제 변경하는 역할
  • DDL은 트랜잭션 발생시키지 않음
  • ROLLBACK, COMMIT 사용 불가
  • DDL 문은 실행 즉시 MySQL에 적용
  • CREATE/DROP/ALTER

DCL(Data Control Language)

  • 데이터 제어 언어
  • 사용자에게 어떤 권한을 부여하거나 빼앗을 때 주로 사용하는 구문
  • GRANT/REVOKE/DENY

관계형 데이터베이스란?(Relationl DataBase)

https://velog.io/@dirn0568/%EA%B4%80%EA%B3%84%ED%98%95-%EB%8D%B0%EC%9D%B4%ED%84%B0%EB%B2%A0%EC%9D%B4%EC%8A%A4RDB%EB%9E%80

이곳을 참조하면 될 것 같다.(트랜잭션에 관한 설명도 있으니 참고하면 좋을 것 같다)


출처

0개의 댓글