การแก้ไข เพิ่ม config lower_case_table_names = 1 แล้ว start mysql 8.0 ไม่ขึ้นใน Ubuntu 22.04

กรณีทำ Server ใหม่ และยังไม่ได้ Dump Data เข้ามาเท่านั้น
หากคุณมีปัญหาเพิ่ม config lower_case_table_names = 1 ใน /etc/mysql/mysql.conf.d/mysqld.cnf แล้ว start mysql ไม่ขึ้น ใน ubuntu 22.04 เรามีวิธีแก้ไขดังนี้
1.หยุดบริการ MySQL
sudo service mysql stop
2.ลบไดเร็กทอรีข้อมูล MySQL
sudo rm -rf /var/lib/mysql
3.สร้างไดเร็กทอรีข้อมูล MySQL ใหม่
sudo mkdir /var/lib/mysql
sudo chown mysql:mysql /var/lib/mysql
sudo chmod 700 /var/lib/mysql
4.เพิ่ม lower_case_table_names = 1
ไปยังส่วน [mysqld]
ใน /etc/mysql/mysql.conf.d/mysqld.cnf
5.สร้างฐานข้อมูล MySQL ใหม่ด้วย
sudo mysqld --defaults-file=/etc/mysql/my.cnf --initialize --lower_case_table_names=1 --user=mysql --console
6.เริ่มต้นบริการ MySQL
sudo service mysql start
7.ตรวจสอบรหัสผ่านที่สร้างใหม่สำหรับผู้ใช้ root ของ MySQL
sudo grep 'temporary password' /var/log/mysql/error.log
8.login เข้า mysql ด้วยรหัสที่ได้จากคำสั่งก่อนหน้านี้
sudo mysql -u root -p
9.เปลี่ยนรหัสผ่าน
ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPa$$w0rd';
หรือคุณสามารถเรียกใช้สคริปต์ “harden” ได้ ในการเปลี่ยนรหัสผ่าน root
sudo mysql_secure_installation
10.หลังจากเปลี่ยนรหัสผ่านแล้ว login เข้า mysql อีกครั้ง
sudo mysql -u root -p
11 เรียกใช้คำสั่งเพื่อตรวจสอบว่า lower_case_table_names = 1 หรือไม่
SHOW VARIABLES LIKE 'lower_case_%';
ผลที่ได้ควรเป็น lower_case_table_names = 1