MySQL
의 Global Variables 중에는 lower_case_table_names
라는 속성이 있다.
테이블명에 대소문자를 구분할 것이냐는 뜻이다.
즉, test
라는 테이블을 쿼리할 때 SELECT * FROM TEST
라고 대소문자를 바꾸는 것을 허용 하느냐는 것이다.
해당 변수는 0~2의 세가지 옵션이 있다.
0 (Linux/Unix 환경에서 default) : 데이터베이스 및 테이블 생성/조회시 대소문자 구분
1 (Windows 환경에서 default) : 대소문자 구분 안함 (전부 소문자로 변환)
2 (MacOS 환경에서 default) : 데이터베이스 및 테이블 생성 시 대소문자 구분, 조회 시 소문자로 변환
사용하는 서버의 OS에 따라 기본 설정값이 바뀐다.
mysql이 설치된 경로로 이동하여 my.cnf
파일을 연다
리눅스 기준
# mysql이 /etc 하위에 설치되었다고 가정할 때
> sudo vi /etc/mysql/my.cnf
아래 텍스트를 추가한다.
# 1로 변경한다고 가정할 때
[mysqld]
lower_case_table_names = 1
이후 mysql을 재시작한다.
> systemctl restart mysqld