show variables like 'lower%'; 0이면 구분 1이면 구분없이 사용
1. 리눅스(우분투)에 MySQL 설치 하고 테이블 생성 시 기본으로 대소문자를 구분한다.
show variables like 'lower%'; << 워크 벤치에서 확인
lower_case_table_names가 0 일 경우 대소문자를 구분합니다.
lower_case_table_names가 1일 경우 대소문자를 구분하지 않습니다.
2. 대소문자를 구분하지 않고 테이블 생성 할 때는 lower_case_table_names 옵션 변경
서버 접속후 경로
sudo vi /etc/mysql/my.cnf
추가
// [mysqld] << 이게 없을경우 같이 추가 있으면 밑에만
[mysqld]
lower_case_table_names = 1
//

/etc/mysql/my.cnf 작성후 mysql 재시작
service mysql restart

/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
AWS설정 변경 방법
AWS RDS > 데이터베이스 > DB 식별자를 클릭합니다.
구성 > 파라미터 그룹의 DB를 클릭합니다.
파라미터에 lower 로 검색을 한 뒤 lower_case_table_names를 체크하고 파라미터 편집을 클릭합니다.
다음과 같이 값에 1을 작성하고 변경 사항 저장을 클릭합니다.
혹)저장을 하면 위와 같이 lower_case_table_names는 변경할 수 없다는 오류가 발생합니다...
lower_case_table_names는 변경할 수 없는 부분이어서 파라미터 그룹을 새로 생성하고 설정을 해야합니다..
파라미터 그룹에서 파라미터 그룹 생성을 클릭합니다.
그룹 이름 및 설명 을 작성하고 생성을 클릭합니다.
생성된 파라미터 그룹을 체크하고, 파라미터 그룹 작업 > 편집 을 클릭합니다.
그 후 파라미터에서 검색 후 다음 부분을 설정합니다.
(MySQL 기본 설정 및 대소문자 구분 설정 입니다.)
-
time_zone 검색 후 time_zone 파라미터를 Asia/Seoul 로 변경합니다.
-
char 검색 후 character_set ~ 나오는 항목의 값을 모두 utf8mb4 로 변경합니다.
-
collation 으로 검색 후 collation_connection, collation_server의 값을 utf8_mb4_general_ci로 변경합니다.
-
lower_case 검색 후 lower_case_table_names 의 값을 1 로 변경합니다. (대소문자 구분 X)
위 설정이 끝났으면 RDS DB의 파라미터 그룹을 변경해주어야 합니다.
데이터베이스 > DB 식별자 > 수정 을 클릭합니다.
아래로 내려와서 데이터베이스 옵션에서 DB 파라미터 그룹을 위에서 생성한 그룹으로 수정합니다.
그 후 가장 아래의 계속 버튼을 클릭합니다.
그럼 위와 같이 현재 값 / 새 값의 파라미터 그룹이 나옵니다.
DB 인스턴스 수정을 클릭합니다 ! 😁
MySQL 8.0 DB에서는 lower_case_table_names의 parameter value(1)을 설정할 수 없나봅니다...
'DB > mysql' 카테고리의 다른 글
mysql특정 컬럼,테이블 찾기 (0) | 2022.06.21 |
---|---|
Error code (0) | 2022.06.20 |
id를 group by로 중복 제거 (0) | 2022.05.27 |
function 추가 (0) | 2022.04.09 |
워크벤치 덤프 (0) | 2022.04.06 |