backend
  • README
  • DOCS
    • Java Docs
    • Servlet Docs
    • JSP Docs
    • DB & SQL Docs
    • Spring Boot Docs
    • Spring Security Docs
    • AWS Docs
  • 설치하기
    • Intellij 설정
  • 자바
    • 01 Java란?
    • 02 자바 시작하기
    • 03 자료형과 연산자
    • 04 제어문
    • 05 메소드
    • 06 클래스 기초
      • Static 보충자료
      • 패키지 보충자료
    • 07 객체지향 프로그래밍
    • 08 클래스 더 알아보기
      • 열거형 ENUM 보충자료
    • 09 클래스와 자료형
      • 다형성 보충자료
      • 제네릭 보충자료
    • 10 컬렉션 프레임워크
      • 컬렉션 프레임워크 보충자료
    • 11 람다식과 함수형 프로그래밍
      • 람다식 보충자료
    • 12 오류 대비하기
      • 오류 보충자료
    • 13 멀티태스킹
      • 멀티태스킹 보충자료
    • 교재보충
      • java.lang
  • 스프링
    • 서블릿, JSP
      • 05 Servlet(서블릿)
        • 서블릿 보충자료
        • 서블릿 추가코드
        • XML, YAML, JSON
      • 06 JSP(자바 서버 페이지)
        • JSP 보충자료
      • 07 JSTL(JSP 스탠다드 태그 라이브러리)
        • JSTL 보충자료
      • 08 Cookie(쿠키), Session(세션)
      • 09 서블릿,필터,리스너
        • 서블릿,필터,리스너 보충자료
      • 11 도서관리 프로젝트 실습
    • Spring Boot
      • 01 스프링 등장 배경, 객체지향
        • 스프링 등장 배경, 객체지향 보충자료
      • 02 IOC(제어의 역전), DI(의존성 주입)
        • IOC 보충자료
        • DI 보충자료
      • 03 스프링 구조
        • 스프링 구조 보충설명
      • 04 테스트코드 실습
      • 05 스프링 빈 설정
        • 스프링 빈 설정 보충자료
      • 06 싱글톤
        • 싱글톤 보충 자료
      • 07 스프링 빈 자동설정
        • 스프링 빈 자동설정 보충자료
      • 08 빈 생명주기
        • 빈 생명주기 보충자료
      • 09 빈 스코프
        • 빈 스코프 보충자료
      • 10 스프링 MVC
        • 스프링 MVC 보충자료
        • 데이터베이스 연동에 필요한 부분
      • 11 Validation(검증)
        • Validation(검증) 보충자료
      • 12 Bean Validation(빈검증)
        • Bean Validation(빈검증) 보충자료
      • 13 예외처리
        • 예외처리 보충자료
      • 14 타입변환
      • 15 JDBC(Java Database Connectivity)
      • 16 커넥션풀
      • 17 트랜잭션
        • 트랜잭션 보충자료
      • 18 JDBC 템플릿 활용
      • 19 MyBatis
      • 20 JPA(Java Persistence API)
      • 22 게시판 프로젝트 실습
    • Spring Security
      • 보안(Security)
      • Spring Security
      • 2. Spring Security 알아보기
        • 보안 위협 실제 사례와 방어 전략
      • 3. Spring Security 기본 동작 흐름
      • 4. Spring Security로 인증 권한 추가하기
        • Spring Security의 인증 및 인가
      • 5. Spring Security에서 세션 관리하기
        • 세션(Session)과 쿠키(Cookie) 비교, 토큰(Token)과의 관계
        • 해싱 및 해싱알고리즘
        • base64
      • 6. Spring Security 악용 보호
        • SameSite
      • 7. Spring Security로 인가 권한 추가하기
      • 8. Bcrypt(비크립트) 암호화
      • OAuth2 적용하기
  • 네트워크
    • HTTP
    • OSI 7계층
  • DB&SQL
    • 01 Database(데이터베이스)와 SQL 개요
    • 02 관계형 모델
    • 03 집합
    • 04 JOIN 연산
    • 05 MySQL
      • 세이브포인트
      • DBeaver, Mysql 오토커밋 설정 관련
    • 06 SQL 기초
      • 예시데이터 쿼리문
    • 07 SQL 실습
      • 실습 스키마
    • 08 Join 활용
      • 실습스키마
    • 09 SQL 활용
      • 실습스키마
    • 10 정규화
      • 실습 스키마
    • 데이터타입
    • 예시 프로젝트 스키마 구성
  • AWS
    • SSL 연결하기
    • 보충설명
Powered by GitBook
On this page
  • MySQL
  • MySQL 기능
  • MySQL Workbench
  • MySQL 서버 연결
  • 보충 – TCP/IP 프로토콜
  • 스키마(Schema)
  1. DB&SQL

05 MySQL

Previous04 JOIN 연산Next세이브포인트

Last updated 5 months ago

MySQL

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

  • 데이터를 저장, 관리, 검색할 수 있는 소프트웨어 시스템으로 MySQL은 데이터를 테이블 형태로 관리하고, SQL 언어를 사용하여 데이터를 처리함

  • MySQL 서버는 백엔드에서 데이터를 저장하고 관리하는 역할을 하며, 클라이언트가 SQL 쿼리를 통해 데이터를 조회하거나 조작할 수 있음

  • 무료로 제공되는 오픈소스로 개발자들이 부담 없이 데이터베이스를 구축하기 용이함

MySQL 기능

  • 데이터 저장 및 관리: 대량의 데이터를 테이블에 저장하고, 다양한 관계를 통해 데이터를 관리함

  • 데이터베이스 관리: 새로운 데이터베이스 생성, 테이블 생성 및 수정, 데이터 삽입 및 삭제 등의 작업을 수행함

  • SQL 지원: MySQL 서버는 SQL 쿼리를 처리하여 데이터를 조회, 삽입, 수정, 삭제하는 기능을 제공

  • 다양한 클라이언트 지원: MySQL 서버는 터미널, 프로그래밍 언어 또는 GUI 툴 등을 통해 데이터를 처리할 수 있음

MySQL Workbench

  • MySQL Workbench는 그래픽 사용자 인터페이스(GUI) 도구로, MySQL 서버와 상호작용할 수 있는 클라이언트 프로그램

  • MySQL Workbench는 MySQL 데이터베이스에 접속하여 데이터를 시각적으로 관리하고, 쿼리를 실행하거나 데이터베이스 설계를 도와주는 역할을 함

  • 다운로드

MySQL 서버 연결

  • MySQL Workbench가 로컬이나 원격에 있는 MySQL 서버에 접속하여 SQL 작업을 수행할 수 있도록 설정

  • Connection Name : 사용자가 만들고자 하는 연결에 대한 이름을 설정하는 필드

  • Connection Method : MySQL 서버에 연결할 때 사용하는 방식, Standard TCP/IP는 로컬 및 원격 MySQL 서버와 연결할 때 많이 사용됨

  • Hostname : MySQL 서버가 위치한 호스트의 이름 또는 IP 주소를 입력 하는 필드, 로컬 서버에 연결할 경우 127.0.0.1 또는 localhost를 입력

  • Port : MySQL 서버와 통신할 때 사용하는 네트워크 포트 번호를 지정하는 필드, 기본적으로 MySQL은 3306번 포트를 사용

  • Username : MySQL 서버에 연결할 때 사용할 사용자 계정을 입력하는 필드, 기본적으로 MySQL 서버의 관리자는 root 계정

  • Password : 입력한 사용자 계정의 비밀번호를 설정하는 부분, Store in Keychain을 클릭하여 비밀번호를 저장할 수 있음. 비밀번호를 저장하지 않으면, 매번 서버에 연결할 때 비밀번호를 입력해야 함

보충 – TCP/IP 프로토콜

  • TCP/IP(Transmission Control Protocol/Internet Protocol)는 인터넷 및 네트워크 통신의 기본 프로토콜로, 데이터를 전송하고 수신하는 데 필요한 모든 규칙과 절차를 정의한 프로토콜 집합

  • 인터넷을 비롯한 대부분의 네트워크는 이 프로토콜을 기반으로 통신을 수행함, TCP/IP는 네트워크 상에서 데이터를 안전하게 전송하고, 패킷이 올바른 순서로 전달되도록 보장하는 역할을 함

TCP/IP의 작동 원리

  • TCP/IP는 두 가지 주요 프로토콜인 TCP와 IP가 결합하여 데이터 통신을 수행하는 방식

  • TCP는 데이터를 신뢰성 있게 전송할 수 있도록 관리하며, 데이터가 손실되거나 오류가 발생하면 재전송

  • IP는 데이터를 패킷 단위로 나누어 네트워크 상에서 목적지까지 전송할 경로를 결정

  • 두 프로토콜이 함께 동작하여 인터넷에서의 신뢰성 있는 데이터 전송을 가능하게 함

스키마(Schema)

  • 스키마(Schema)는 데이터베이스에서 데이터 구조를 정의하는 개념으로, 테이블, 뷰, 인덱스, 관계, 제약 조건 등 데이터베이스 내의 모든 객체의 구조를 기술한 청사진

  • 스키마는 데이터베이스 관리자(DBA) 또는 개발자가 데이터베이스의 구조를 체계적으로 설계하고 관리하기 위해 사용함

https://dev.mysql.com/downloads/workbench/