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