linux 계열에서는 table 의 case 를 구별해서 대문자로 작성된 query 의 table 명을 소문자 table 로 인식하지 못했다.

case sensitive 를 없애기 위해

/etc/my.cnf 에

[mysqld]
# Remove case sensitive in table names
lower_case_table_names=1

를 추가해주고 다시 시작하려하니 

systemctl restart mysqld

에러가 떨어져서 왜그런가 /var/log/mysqld.log 를 봤더니

data 폴더의 세팅 값이랑 불일치하게 되어서 그렇다고 한다. 즉 이미 생성된 data에 대하여 불일치로 인해 시작을 못하게 되는 것 같다. 

그래서 다음과 같은 방법으로 data 를 날리고 다시 시작해줬다.

- @참고: https://stackoverflow.com/questions/51803216/lower-case-table-names-settings-in-mysql-8-0-12

systemctl stop mysqld

sudo rm -rf /var/lib/mysql

sudo mkdir /var/lib/mysql

sudo chown mysql:mysql /var/lib/mysql

sudo chmod 751 /var/lib/mysql

systemctl start mysqld
블로그 이미지

uchacha

개발자 일지

,