Anda dapat menggunakan file init. Periksa dokumentasi resmi MySQL di Cara Menyetel Ulang Kata Sandi Root (termasuk komentar untuk solusi alternatif).
Jadi pada dasarnya menggunakan file init, Anda dapat menambahkan kueri SQL apa pun yang Anda perlukan untuk memperbaiki akses Anda (seperti GRAND
, CREATE
, FLUSH PRIVILEGES
, dll.) ke dalam file init (file apa saja).
Berikut adalah contoh saya memulihkan akun root:
echo "CREATE USER 'root'@'localhost' IDENTIFIED BY 'root';" > your_init_file.sql
echo "GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' WITH GRANT OPTION;" >> your_init_file.sql
echo "FLUSH PRIVILEGES;" >> your_init_file.sql
dan setelah Anda membuat file, Anda dapat menjalankan:
killall mysqld
mysqld_safe --init-file=$PWD/your_init_file.sql
kemudian untuk memeriksa apakah ini berhasil, tekan Ctrl+Z dan ketik:bg
untuk menjalankan proses dari latar depan ke latar belakang, lalu verifikasi akses Anda dengan:
mysql -u root -proot
mysql> show grants;
+-------------------------------------------------------------------------------------------------------------+
| Grants for [email protected] |
+-------------------------------------------------------------------------------------------------------------+
| GRANT USAGE ON *.* TO 'root'@'localhost' IDENTIFIED BY PASSWORD '*81F5E21E35407D884A6CD4A731AEBFB6AF209E1B' |
Lihat juga:
- Tanpa Sandi – Tanpa Masalah di Semuanya MySQL
- Bug #28331:Pesan kesalahan tidak jelas saat CREATE USER gagal karena kunci duplikat