[Database][MySQL] 테이블명 대소문자 구분 설정

koline·2024년 7월 8일
0

Database

목록 보기
2/4

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
profile
개발공부를해보자

0개의 댓글

관련 채용 정보