Untuk membuatnya berfungsi di MySQL 8.0 dan linux, ikuti langkah-langkah di bawah ini
-
Cadangkan skema mysql sebelum menjalankan langkah-langkah berikut menggunakan
mysqldump -h localhost -u root -p mysql> /home/username/dumps/mysqldump.sql
dan kemudian hentikan mysql menggunakan
sudo service mysql stop
-
pindahkan atau hapus direktori /var/lib/mysql. Ini akan menghapus semua database!!!!
mv /var/lib/mysql /tmp/mysql
-
Buat direktori /var/lib/mysql baru dan jadikan pengguna mysql sebagai pemilik
mkdir /var/lib/mysql chown -R mysql:mysql /var/lib/mysql chmod 750 /var/lib/mysql
-
edit /etc/mysql/mysql.conf.d/mysqld.cnf dan tambahkan baris berikut setelah
[mysqld] lower_case_table_names=1
-
Inisialisasi mysql menggunakan yang berikut
mysqld --defaults-file=/etc/mysql/my.cnf --initialize lower_case_table_names=1 --user=mysql --console
Ubah file defaults dengan lokasi sebenarnya dari file default Anda. info lebih lanjut tentang inisialisasi mysql di sini:https://dev.mysql.com/doc/refman/8.0/en/data-directory-initialization-mysqld.html
-
(Opsional) Ulangi
chown -R mysql:mysql /var/lib/mysql chmod 750 /var/lib/mysql
jika pemilik file di /var/lib/mysql bukan mysql
-
Mulai mysql menggunakan
sudo service mysql start
-
Jika semuanya bekerja dengan benar, buka mysql menggunakan
mysql -u root -p
dan dengan menjalankan kueri ini
SHOW VARIABLES where Variable_name like 'lower%';
Anda akan mendapatkan
'lower_case_table_names', '1'
-
Pulihkan skema mysql menggunakan dump yang dibuat pada langkah 0.
-
Jalankan mysql_upgrade untuk membuat skema sys