[MySQL] MySQL 소개

Main·2024년 8월 23일
0

MySQL

목록 보기
1/13
post-thumbnail

MySQL ?

MySQL은 오픈 소스 관계형 데이터베이스 관리 시스템(RDBMS)으로, 데이터를 구조화하여 저장하고 관리하는 데 사용됩니다. 주로 웹 애플리케이션과 데이터베이스 기반 소프트웨어에서 널리 사용되며, SQL(Structured Query Language)을 사용하여 데이터베이스와 상호작용합니다.


Database란 무엇일까?

MySQL에 대해 배우기에 앞서 Datatbase가 무엇인지를 생각해보겠습니다.

Database는 데이터를 체계적으로 저장하고 관리하는 시스템입니다. 데이터베이스는 데이터를 효율적으로 저장, 검색, 수정, 삭제할 수 있도록 설계된 구조를 갖추고 있으며, 여러 사용자가 동시에 데이터를 접근하고 조작할 수 있도록 지원합니다.

전화번호부에서 ‘김철수’라는 이름을 가진 사람의 전화번호를 찾는 것은 어렵지 않습니다.

하지만 같은 이름을 가진 여러 사람이 있을 경우, 모든 전화번호를 쉽게 찾기 어렵고 복잡할 수 있습니다. 이런 경우 데이터 베이스를 사용하면 쉽게 데이터를 조회할 수 있습니다.

아래 sql문 예시 코드를 보겠습니다.
간단히 sql문을 통해 이름이 ‘김철수’인 사람의 전화번호부 데이터를 모두 가져올 수 있습니다.

select * from phone_book where name = '김철수';

또한, 더 복잡한 검색도 가능합니다. 예를들어 같은 이름을 가지며, 같은 지역번호를 가진 데이터도 간단히 조회할 수 있습니다.

select * from phone_book where name = '김철수' AND phone_number LIKE "02%";

이처럼 데이터베이스는 실생활에서 많은 데이터를 효과적으로 관리하고, 필요한 정보를 쉽게 찾을 수 있도록 도와주는 중요한 도구입니다.


MySQL은 관계형 데이터베이스 관리 시스템(RDBMS)

MySQL은 오픈 소스 관계형 데이터베이스 관리 시스템(RDBMS)으로, 데이터를 구조화하여 저장하고 관리하는 데 사용됩니다.

관계형 데이터베이스 관리 시스템(RDBMS, Relational Database Management System)은 데이터를 구조화된 방식으로 저장하고 관리하는 소프트웨어입니다. RDBMS는 데이터를 키(Key)와 값(Value)들의 간단한 관계를 테이블화 시키며, 행(Row)과 열(Column)을 이루는 하나 이상의 테이블를 정의합니다. 이러한 테이블 간의 관계를 정의하고 관리합니다. 관계형 데이터베이스는 데이터의 무결성, 일관성, 효율적인 조회 등을 보장하는 다양한 기능을 제공하며, SQL(Structured Query Language)을 통해 데이터를 관리합니다.

RDBMS의 특징

  • 데이터 무결성(Data Integrity): RDBMS는 데이터의 정확성과 일관성을 유지하기 위해 다양한 무결성 제약 조건을 제공합니다. 예를 들어, 기본 키 제약, 외래 키 제약, 고유 제약 등이 있습니다. 이러한 제약 조건을 통해 데이터베이스의 데이터가 잘못되거나 불완전하게 저장되는 것을 방지합니다.
  • 트랜잭션 관리: RDBMS는 트랜잭션이라는 개념을 통해 여러 SQL 작업을 하나의 단위로 묶어 처리할 수 있습니다. 트랜잭션은 원자성(Atomicity), 일관성(Consistency), 격리성(Isolation), 지속성(Durability)을 보장하는 ACID 특성을 갖고 있습니다.
    • 원자성: 트랜잭션 내의 모든 작업이 완전히 수행되거나 전혀 수행되지 않음을 보장합니다.
    • 일관성: 트랜잭션이 완료되면 데이터베이스가 일관된 상태를 유지하도록 합니다.
    • 격리성: 동시에 실행되는 트랜잭션들이 서로에게 영향을 미치지 않도록 합니다.
    • 지속성: 트랜잭션이 성공적으로 완료되면 그 결과는 영구적으로 저장됩니다.
  • SQL(Structured Query Language): RDBMS는 SQL을 통해 데이터를 관리합니다. SQL은 데이터를 정의하고, 조작하며, 질의할 수 있는 언어로, 관계형 데이터베이스의 표준입니다.

MySQL의 기본개념

  • 데이터베이스(Database): 데이터를 구조화하여 저장하는 공간입니다. MySQL에서는 여러 개의 데이터베이스를 생성하고 관리할 수 있습니다.
  • 테이블(Table): 데이터베이스 내에서 데이터를 저장하는 기본 단위입니다. 각 테이블은 열(Column)과 행(Row)으로 구성되며, 열은 데이터의 속성을, 행은 실제 데이터를 나타냅니다.
  • SQL 쿼리: SQL(Structured Query Language)은 MySQL에서 데이터를 관리하기 위해 사용하는 언어입니다. SELECT, INSERT, UPDATE, DELETE 등의 명령어로 데이터를 조회, 추가, 수정, 삭제할 수 있습니다.
  • 트랜잭션(Transaction): 하나 이상의 SQL 작업을 하나의 단위로 묶어 처리하는 것을 의미합니다. 트랜잭션은 일관성을 유지하고, 문제가 발생하면 롤백(Rollback)하여 이전 상태로 되돌릴 수 있습니다.

정리

MySQL은 오픈 소스 관계형 데이터베이스 관리 시스템(RDBMS)으로, 데이터를 구조화하여 효율적으로 저장하고 관리하는 데 사용됩니다. 데이터베이스는 데이터를 체계적으로 저장하고 여러 사용자가 동시에 접근할 수 있도록 지원하며, SQL을 통해 데이터와 상호작용합니다. 관계형 데이터베이스는 데이터를 테이블 형태로 구성하고, 이들 간의 관계를 정의하여 데이터의 무결성과 일관성을 유지합니다.

profile
함께 개선하는 프론트엔드 개발자

0개의 댓글