Aurora Serverless MySQL(5.6)로 일본어 데이터를 처리할 수 있도록 한다

문자 코드를 변경합시다.



Aurora Serverless를 만들어 보았습니다. 그러나,latin 라는 문자 코드(character set)가 표준으로
일본어나 🍺을 다룰 수 없었기 때문에 사용할 수 있도록 한다.

환경 (2019/12/19)


  • Aurora Serverless
  • MySQL
  • aurora 5.6


  • 설정 방법



    매개변수 그룹 작성



    RDS > 파라미터 그룹
    이미지는 Aurora Serverless 무케의 설정이므로 주의.



    파라미터 설정



    상단의 "파라미터 편집"을 누르고 다음과 같이 설정합니다.



    character_set



    그냥 utf8 그렇다면 그래서 utf8mb4 선택.
    character_set_client = utf8mb4
    character_set_connection = utf8mb4
    character_set_database = utf8mb4
    character_set_results = utf8mb4
    character_set_server = utf8mb4
    

    index column size 확장(optional)



    utf8mb4를 설정하고 varchar(255)의 키 열을 만들면mysql Index column size too large. The maximum column size is 767 bytes.그리고 이런 이유 에서 화난다.

    그런 긴 키 컬럼 만들지 말라는 이야기도 있지만,
    그런 걱정없이 typeorm에서 사용하고 싶습니다. 그래서 제한을 확장합니다.
    innodb_file_format = Barracuda
    innodb_file_per_table = 1
    innodb_large_prefix = 1
    

    확장된 index column size를 사용하기 위해



    CREATE 문에서 ROW_FORMAT=DYNAMIC를 지정해야했습니다.
    CREATE TABLE `retweet` (`tweetId` varchar(255) NOT NULL, ...) ENGINE=InnoDB ROW_FORMAT=DYNAMIC
    

    파라미터 그룹 반영



    대상 데이터베이스의 "변경"에서 작성한 매개 변수 그룹을 선택하고 저장
    잠시 후 반영해야합니다.



    결과 확인


    show variables like "character%" 라고 보인다

    뭔가 utf8mb4가 아니지만 뭐 문제없이 사용할 수 있기 때문에 괜찮을 것입니다. .

    좋은 웹페이지 즐겨찾기