[AWS] RDS MySQL 연결-(2)

yunSeok·2023년 10월 8일
0

AWS

목록 보기
6/11

RDS 파라미터 그룹 설정

데이터베이스 파라미터 그룹은 데이터베이스 구성 방법을 지정해줍니다. 데이터베이스에 할당할 메모리 등의 리소스 양을 지정할 수 있습니다!

추가적으로, DB 인스턴스와 다중 AZ DB 클러스터를 파라미터 그룹과 연결하여 데이터베이스 구성을 관리하는 작업도 지원한다고 합니다..


RDS 페이지 왼쪽 목록에 있는 파라미터 그룹을 클릭해주세요.


오른쪽 위에 파라미터 그룹 생성 클릭!


  • DB 파라미터 그룹 패밀리를 선택합니다.

    저는 데이터 베이스 생성할 때 mysql8.0으로 생성했기 때문에 같은거로 선택해주었습니다. MySQL을 생성하셨으면 생성시 디폴트값으로 8.0이 적용되었기 때문에 선택해주시면 되고, 헷갈리시면

    수정버튼 눌러서 자신의 데이터베이스 정보를 다시 한 번 확인해주세요!

  • 유형에서 DB 매개변수 그룹 유형 선택합니다.

    기본 값인 DB Parameter Group으로 선택하겠습니다.

  • 그룹 이름에 DB 파라미터 그룹의 이름을 입력합니다.

    • 저는 'Parameter-group' 이라고 입력해주었습니다.

    • DB 파라미터 그룹 이름에 적용되는 제한 사항입니다.

      • 1~255자의 문자, 숫자 또는 하이픈(-)이어야 합니다.
      • 기본 매개변수 그룹 이름에는 마침표(.)가 포함될 수 있습니다. 그러나 사용자 지정 매개변수 그룹 이름에는 마침표를 포함할 수 없습니다.
      • 첫 번째 문자는 문자여야 합니다.
      • 이름은 하이픈으로 끝나거나 두 개의 하이픈(-)이 연속으로 포함될 수 없습니다.
  • 설명 상자에 DB 파라미터 그룹에 대한 설명을 입력합니다.

    'test'로 입력해주었습니다.


생성이되면 위와 같은 화면이 나오는데, 파라미터 그룹 편집을 위해 체크하고 작업에 있는 편집 클릭해주세요.


위와 같이 파라미터 검색창이 나올텐데요, 몇가지 설정을 진행하겠습니다.


1. character 설정

검색창에 character를 입력하고 아래 체크된 6개 파라미터의 값을 utf8mb4 로 작성해주세요! 변경사항 저장도 눌러주세요!

개발 언어 세팅을 하시면서 utf8은 많이 들어보셨을거같은데요, MySQL, MariaDB는 utf8로 세팅하는 경우 이모지(ex: 😄)문자가 입력되지 않아서 utf8mb4 라는 charset을 사용합니다!

이모지문자를 표현하기 위해서 글자당 최대 4bytes가 필요하지만 utf8에서는 가변3바이트를 사용하기 때문에 이모지문자가 깨지게 됩니다.. 따라서 4바이트를 사용하는 utf8mb4로 설정하였습니다.

  • MySQL 기준 character에 대한 설명을 조금 덧붙여볼게요! (참고)
변수설명
character_set_client- MySQL Client의 Default Character set
- Client로부터 전송되는 쿼리문장의 문자집합을 말함
- 각 커넥션에서 임의의 문자집합으로 변경해서 사용 가능
character_set_connection
- MySQL Server가 Client로부터 전달받은 쿼리 문장에서 인트로듀서(Introducer)가 없는 리터럴(literal) 또는 숫자(number) 값을 문자(String)열로 변환할 때 사용하는 Character set
- 각 커넥션에서 임의의 문자집합으로 변경해서 사용 가능
character_set_database
- MySQL Database의 Default Character set
- 이 변수가 지정되지 않았다면 character_set_server와 같은 값을 가짐
- 각 DB, TABLE, COLUMN은 기본 문자셋과 관계없이 개별적인 문자집합을 가질 수 있으며 DB를 생성할 때 아무런 문자집합이 명시되지 않았다면, 이 변수의 값이 기본값으로 사용됨
character_set_filesystem
- LOAD DATA INFILE ... 또는 SELECT ... INTO OUTFILE 문장이 실행될 때 파일의 읽고 쓰기에 사용되는 Character set
- 데이터 파일의 내용을 읽을 때 사용하는 문자집합이 아닌, 파일의 이름을 찾을 때 사용하는 문자 집합
- 파일을 오픈하려는 시도가 있기 전에 character_set_client에서 character_set_filesystem으로 변환
- 기본값은 binary인데, 이것은 아무런 변환이 없다는 것을 의미
- 멀티 바이트 파일 이름을 사용할 수 있는 시스템에서는 서로 다른 값을 사용하도록 함
- 예를 들면 시스템이 UTF8로 파일이름을 표시한다면, 'utf8'로 설정
- 이 변수는 MySQL 5.1.6에서 추가
- 각 커넥션에서 임의의 문자집합으로 변경해서 사용 가능
character_set_results
- MySQL Server가 쿼리의 처리 결과 또는 error 를 Client로 retuen 할 때 사용하는 Character set
- 각 커넥션에서의 임의의 문자집합으로 변경해서 사용 가능
character_set_server
- MySQL Server의 Default Character set
- DB나 TABLE 또는 COLUMN에 아무런 문자집합이 설정되지 않았을 때, 이 변수의 값이 기본값으로 사용됨
- 각 커넥션에서의 임의의 문자집합으로 변경해서 사용 가능
character_set_system
- MySQL Server가 T 식별자(Identifier, 테이블명이나 컬럼명 등)를 저장하기 위해 사용하는 캐릭터셋
- 항상 utf8로 설정되어있으며, 사용자가 설정하거나 변경할 수 없음

2. Time Zone 설정

검색창에 time_zone을 입력하고 time_zone을 체크해준 뒤,
Asia/Seoul로 작성해주세요

변경 사항 저장 클릭


3. collation 설정

검색창에 collation을 입력하고 아래 나오는 collation_connection과 collation_server 를 체크 해준 뒤, utf8mb4_general_ci 로 작성해주세요!


4. max_connections 설정

  • 허용되는 동시 클라이언트 연결 수 설정입니다.

검색창에 max_connections를 입력해주고
MariaDB 버전 10.6을 제외한 모든 MariaDB 및 MySQL 버전의 디폴트 값으로 {DBInstanceClassMemory/12582880} 되어 있을겁니다(바이트단위).
지워주고 150정도로 설정해줄게요.


DB 파라미터 그룹을 DB 인스턴스와 연결

데이터베이스 -> 수정

추가 구성에서 DB 파라미터 그룹을 생성한 파라미터 그룹 이름으로 변경해주세요.

값 변경된거 확인해주고, 즉시 적용으로 설정하도록 할게요.
DB 인스턴스 수정 클릭















character 출처 https://blog.naver.com/didim365_/220311456806

0개의 댓글