본문 바로가기
Cloud Services/AWS

Chapter 2. 데이터베이스 연결

by 더 이프 2023. 6. 29.
728x90

목차

    1. RDS

    ■ 파라미터 그룹 생성

    • 서비스 - 데이터베이스 - RDS클릭
    • 파라미터 그룹 클릭
    • 파라미터 그룹 생성
    • 파라미터 그룹의 세부 정보를 설정 후 생성
    • 생성된 파라미터를 클릭하여 들어간 뒤 파라미터 편집 클릭
    • time_zone 을 Asia/Seoul로 변경
    • char를 검색 후 아래의 요소들을 utf8mb4로 변경
      - character_set_client
      - character_set_connection
      - character_set_database
      - character_set_filesystem
      - character_set_results
      - character_set_server
    • collation을 검색 후 아래의 요소들을 utf8mb4_0900_ai_ci로 변경
      - collation_connection
      - collation_server
    • log_bin을 검색 후 아래 요소를 1로 변경(1로 안하면 트리거, 프로시저 설정 불가)
      - log_bin_trust_function_creators
    • 완료 후 변경사항을 저장

    ■ 데이터베이스 생성

    • RDS에 데이터베이스 클릭
    • 데이터베이스 생성 클릭
    • 표준 생성 선택 후 엔진 옵션을 MySQL로 선택(엔진 버전은 MySQL 8.0.32)
    • 템플릿은 프리티어를 선택(무료 버전)
    • 해당 영역에 내용 작성
      - DB 인스턴스 식별자는 DB 인스턴스 이름
      - 마스터 사용자 이름과 암호는 MySQL과 연결할 때 사용할 ID와 PW
    • 인스턴스 구성에서 버스터블 클래스에 db.t3.micro 선택
    • 스토리지는 유형을 범용 SSD(gp2), 할당된 스토리지는 20GiB, 스토리지 자동 조정은 비활성화로
      - 20GiB, 자동 조정을 비활성화로 하지않으면 과금될 수 있음
    • 컴퓨팅 리소스는 EC2 컴퓨팅 리소스에 연결 안 함, DB 서브넷 그룹은 기본값, 퍼블릭 액세스는 예를 선택
      - 퍼블릭 액세스를 예로 해야 컴퓨터에서 접근 가능 아니면 EC2에서만 DB 접속 가능
    • VPC 보안 그룹은 새로 생성 후 이름 작성, 가용 영역을 ap-northeast-2a, 인증 기관은 기본값, 포트는 3306 선택
      - 이름은 데이터베이스명과 같게 하여 구분이 쉽게 가도록 하는게 좋음
      - 해당 가용 영역은 서울을 의미
    • 데이터베이스 인증은 암호 인증으로 선택
    • 추가 구성에서 해당 영역을 아래와 같이 선택
      - DB 파라미터 그룹은 위에서 생성한 파라미터 그룹 선택
      - 옵션 그룹은 기본값
      - 자동 백업, 암호화는 비활성화(과금)
    • 마이너 버전 자동 업그레이드 사용, 삭제 방지 비활성화(과금)
    • 데이터베이스 생성
      - 요금 청구된 건 프리티어는 12개월간 적용 안됨)
    • 생성 후 해당 데이터베이스 클릭
    • 해당 데이터베이스의 연결&보안 창에서 VPC 보안 그룹 클릭
    • 해당 보안 그룹의 인스턴스 규칙 편집 클릭
    • 규칙을 추가하고 유형을 MySQL/Aurora, 다른 pc에서 DB에 접근 가능하게 소스를 0.0.0.0/0과 ::/0을 적용하여 저장

    ■ 데이터베이스 연결

    • MySQL 워크 벤치를 실행하여 Connections 추가
    • 해당 영역을 작성
      - Connection Name은 해당 Connection의 이름 설정
      - Hostname은 생성한 데이터베이스의 엔드포인트를 입력
      - Username은 데이터베이스에서 설정한 아이디를 입력
    • 작성 후 Store in Vault 클릭하여 비밀번호 입력
    • yml에 경로를 RDS 엔드포인트로 변경 후 username과 password도 변경
      - 서버랑 DB를 연결함