일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- 맥
- Stock
- SQL
- 공모주 청약
- php
- css
- 제이쿼리
- 주식 청약
- 주식 청약 일정
- Eclipse
- 리눅스
- 7월 공모주 청약 일정
- 자바
- 코드이그나이터
- 공모주
- JavaScript
- jquery
- IPO
- codeigniter
- java
- 공모주 청약 일정
- MYSQL
- linux
- html
- 자바스크립트
- 오라클
- 주식
- 6월 공모주 청약 일정
- Stock ipo
- Oracle
- Today
- Total
개발자의 끄적끄적
[MySQL] 대소문자 구분 안하기 - lower_case_table_names 변경 본문
[MySQL] 대소문자 구분 안하기 - lower_case_table_names 변경
MySQL로 간혹가다 작업 도중 분명히 테이블이 존재하는데
Table '테이블명' doesn't exist
라는 문구가 나올때가 존재한다.
윈도우에서는 대부분 대소문자 구분없이 설치가 되지만,
간혹가다가 리눅스용 MySQL은 대소문자 구분하는 형식으로 설치가 되있는 경우가 있다 .
show variables like 'lower_case_table_names';
다음과 같은 명령을 실행하고 확인 하였을 경우
lower_case_table_names의 값이 0인지 1인지 2인지를 확인해야 한다.
본인의 테스트 서버는 0이어서 오류가 났었던 것이다.
보통 2는본적이 없어서 모르겠고 0 또는 1인것을 보았었다.
0일 경우 : 대소문자 구분함
1일 경우 : 대소문자 구분안함
본인은 대소문자 구분을 하지 않기위하여 lower_case_table_names의 값을 1로 설정을 해주고자 한다.
MySQL의 my.cnf 파일을 건드려 주어야 하는데
보통은 /etc/my.cnf에 존재한다.
vi로 my.cnf 파일을 보도록 하자
접속하다보면 [mysqld] << 이영역이 있을텐데
영역의 맨밑에
lower_case_table_names = 1
라고 설정을 해주도록 하자
비교를 하기 위해 한줄 내려서 작성하였다.
붙여서 상관은 없다
위치는 [mysqld] < 밑에 나열된 명령어들 그리고 다음 영역의 [] 가 나오기 전에만 작성해 주면
되겠다.
저장하고 나온다음에 mysqld 서비스를 재시작 해주었다.
쿼리에서 다시 명령어를 실행하여 대소문자 구분값이 변경되었는지 확인해보자
본인은 1로 잘 변경이 되었다.
한번 다시 아까 오류난 쿼리를 재실행 해보도록 하겠다.
정상적으로 소문자 테이블인대 대문자로 명령어를 실행해도 잘나온다
유의하도록 하자...
출처: https://roqkffhwk.tistory.com/91 [야근싫어하는 개발자]
'개발 > sql' 카테고리의 다른 글
[mysql] Cannot add foreign key constraint [펌] (0) | 2020.05.31 |
---|---|
[mysql] linux(CentOS 7)에서 MySQL log 확인방법 (0) | 2020.05.30 |
[mysql] Can`t open and lock privilege tables: Table mysql.user doesn`t exist 에러 (0) | 2020.05.29 |
[MySQL] 외부 접근 허용하기 (0) | 2020.05.29 |
[mysql] Host 'HOST이름' is not allowed to connect to this MySQL server [펌] (0) | 2020.05.29 |