카테고리 없음

[2023.01.23 / CNU SW 아카데미] 실리콘밸리에서 날아온 데이터베이스2

은행장 노씨 2023. 1. 25. 01:25

MySQL 소개 및 설치
- 2. MySQL 소개/설치와 예제 데이터 소개

 

2.1 MySQL 소개

- 가장 인기있는 관계형 데이터베이스 : MySQL

- 시작은 오픈소스인데 지금은 유료버전도 있다. 

  • MariaDB
    • 오픈 소스로 무료, MySQL 5.5 기반
    • MySQL 과 인터페이스는 동일하나 성능은 더 좋음
  • MySQL 

MySQL 특징(1)

- 한동안 웹개발 표준 기술 스택 중의 하나였음

- LAMP : Linux, Apache, MySQL, PHP

- 지금도 Postgres와 함께 가장 널리 쓰이는 프로덕션용 관계형 데이터베이스

- 한 대 서버 솔루션이다

  • Scale-Up : 서버 CPU에 메모리 추가
  • Scale-Out : Master-Slave 구성 => MySQL 은 이를 지원하지 못함
    읽기의 용량만 늘려줄 수 있다

 

2.2 클라우드/ AWS 소개

클라우드 컴퓨팅 소개, 가장 큰 클라우드 업체인 AWS 소개

 

- 클라우드란?

: 컴퓨팅 자원(하드웨어, 소프트웨어 등등)을 네트워크를 통해 서비스 형태로 제공하는 것

  • No Provisioning
  • Pay As You Go
  • 자원(서버)을 필요한만큼 실시간으로 할당하여 사용한 만큼 지불한다.
    => 탄력적으로 필요한 만큼의 자원을 유지하는 것이 중요하다. 

- 클라우드 컴퓨팅의 장점

  • 초기 투자 비용이 크게 감소
    CAPEX(Captial Expanditure) vs. OPEX(Operating Expense)
  • 리소스 준비를 위한 대기시간 대폭 감소
  • 노는 리소스 제거로 비용 감소
  • 글로벌 확장 용이
  • 소프트웨어 개발 시간 단축, Managed Service(SaaS) 이용

AWS 소개

- 가장 큰 클라우드 컴퓨팅 서비스 업체

- 아마존의 상품데이터를 API로 제공하면서 시작

- 다양한 종류의 소프트웨어 / 플랫폼 서비스를 제공

 

- Database Services

  • RDS(Relational Database Service)
    • MySQL/MariaDB, PostgreSQL, Aurora
    • Oracle, MS SQL Server
  • DynamoDB
  • Redshift
  • ElastiCache
  • Neptune(Graph database)
  • ElasticSearch
  • MongoDB

 

2.3 MySQL 설치 - Docker

Docker 소개와 MySQL 설치방법 소개

 

- Docker

:  MySQL을 다른 OS에서 설치하려면 다양한 변수가 존재한다. 

Docker는 특정 프로그램과 필요한 기타 소프트웨어들을 하나의 패키지로 만들어서 해당 프로그램의 개발과 사용을 도와주는 오픈 소스플랫폼이다. 

 

Docker 구조 : Virtualization vs. Containerization

출처 : 프로그래머스 캠퍼스 백엔드 미니 데브코스

- Docker는 가상화랑 비슷하지만 구현 방법이 다르다. 

- Docker Engine을 설치해야 한다. 

- 원하는 image를 다운받고 Docker Engine 

 

2.4 MySQL 설치 - AWS RDS

AWS RDS 소개, AWS RDS로 MySQL 설치 데모

 

AWS RDS란?

: AWS 가 제공해주는 다양한 관계형 데이터베이스 서비스

 

계정을 생성하고, 데이터 베이스를 생성해보자.

사양을 좋은 걸로 하지 않았는데도 한달에 20만원정도 비용을 지불해야 한다...

 

 

2.5 MySQL DDL과 예제 테이블 소개