우분투에서 MySQL 테이블 이름을 대소 문자를 구분하지 않게 만드는 방법은 무엇입니까?


44

Ubuntu 13.10 및 MySQL 5.6을 사용하고 있으며 데이터베이스 이름과 테이블 이름이 기본적으로 Ubuntu (및 일부 다른 * nix 환경)에서 대소 문자를 구분한다는 것을 알고 있습니다.

이제 우분투에서 MySQL이 대소 문자를 구분하지 않게 만들고 싶습니다 .

가능합니까? 그렇다면 어떻게해야합니까?

답변:


51

터미널을 열고 편집 /etc/mysql/my.cnf

sudo nano /etc/mysql/my.cnf

[mysqld]섹션 아래에 추가하십시오 .

lower_case_table_names = 1

MySQL을 다시 시작

sudo /etc/init.d/mysql restart

그런 다음 여기에서 확인하십시오.

mysqladmin -u root -p variables

2
이 섹션을 사용할 수없는 경우 추가해야합니다. 그렇지 않으면 재시작이 실패합니다.
alexander

9

lower_case_table_names기존 테이블이있는 DB에서 변경하면 MySQL> Table이 존재하지 않습니다. 그러나 그것은 일어날 수 있습니다.

이 경우이 답변에 대한 의견이 도움 되었습니다.

값을 되돌리고 데이터베이스를 다시 시작한 후 테이블을 내보내고 값을 다시 1로 설정하고 데이터베이스를 다시 시작한 후 테이블을 다시 가져 와서 모든 것이 다시 작동했습니다.


5

이 문제로 인해 Doctrine은 대문자 / CamelCase 테이블 이름을 생성하고 MySQL은 소문자로 저장했습니다.

변경 my.cnf하고 추가하여 해결되었습니다.

lower_case_table_names = 1

[mysqld] 섹션 아래

my.cnf를 찾을 수 있습니다 :

  • LAMPP / XAMPP ...에서 :

    /opt/lampp/etc/my.cnf

  • 독립형 mysql 서버 :

    /etc/mysql/my.cnf

그런 다음 MySQL 서버를 다시 시작하면 모든 것이 정상입니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.