QueryPie Collation 스크립트 실행 가이드

QueryPie Collation 스크립트 실행 가이드

요약

  • QueryPie Tools 내에는 Meta DB 내 테이블과 컬럼의 collation을 통일하는 스크립트가 존재합니다.

  • 해당 스크립트는 10.2.8 이상 버전을 설치할 때 실행되어야합니다.

  • 다만, fix_collation.sh만 실행하여야 하며, 스크립트 명이 collate.sh는 실행하지 않아야합니다.

 

스크립트 실행 방법

  1. QueryPie Service Down

    docker-compose --env-file compose-env --profile querypie down
  2. Tools 실행

    docker-compose --env-file compose-env --profile tools up -d
  3. 스크립트 실행

    docker exec querypie-tools-1 /app/script/fix_collation.sh run -------------------------------------------------------------------------------- Fix Collations -------------------------------------------------------------------------------- Enter your choice (querypie/querypie-log/): querypie -------------------------------------------------------------------------------- [2025-05-14 02:59:22] QueryPie collation converting is started. --------------------------------------------------------------------------------

     

스크립트 역할

fix_collation.sh는 MySQL 테이블 및 컬럼의 Collation(정렬 및 비교 방식) 을 일괄 수정하여 데이터 정합성을 유지하는 데 사용됩니다.

📌 Collation 예시

  • utf8mb4_general_ci: 대소문자 구분 안 함 (Case Insensitive)

  • utf8mb4_bin: 대소문자 구분 + 바이너리 비교 (Case Sensitive)

  • utf8mb4_0900_ai_ci: MySQL 8 이후 도입된 정교한 정렬 방식

 

⚠️ 서로 다른 collation 값으로 문자열을 비교할 경우 오류가 발생할 수 있습니다.

Illegal mix of collations (utf8mb4_0900_ai_ci, IMPLICIT) and (utf8mb4_general_ci, IMPLICIT) for operation '='

 

스크립트 실행 여부 기준

Tools 내 스크립트명

실행 여부

비고

Tools 내 스크립트명

실행 여부

비고

collate.sh

❌ 실행 금지

10.2.7 이하 버전에서 사용되던 스크립트

fix_collation.sh

✅ 실행 가능

10.2.8 이상 버전부터 사용

 

만약, 아래의 경우 QueryPie 지원팀에 문의해 주세요.

  • 10.2.7 이하 버전에서 Illegal mix of collations (utf8mb4_0900_ai_ci, IMPLICIT) and (utf8mb4_general_ci, IMPLICIT) for operation '=' 에러가 발생할 경우

  • fix_collation.sh이 아닌 collate.sh를 실행하였을 경우