Versi mySQL apa yang Anda gunakan? Saya menggunakan 5.7.10 dan memiliki masalah yang sama dengan masuk sebagai root
Ada 2 masalah - mengapa saya tidak bisa masuk sebagai root untuk memulai, dan mengapa saya tidak bisa menggunakan 'mysqld_safe` untuk memulai mySQL untuk mereset kata sandi root.
Saya tidak punya jawaban untuk mengatur kata sandi root selama instalasi, tetapi inilah yang Anda lakukan untuk mengatur ulang kata sandi root
Sunting kata sandi root awal saat menginstal dapat ditemukan dengan menjalankan
grep 'temporary password' /var/log/mysqld.log
http://dev.mysql.com /doc/refman/5.7/en/linux-installation-yum-repo.html
-
systemd
sekarang digunakan untuk menjaga mySQL daripadamysqld_safe
(itulah sebabnya Anda mendapatkan-bash: mysqld_safe: command not found
kesalahan - tidak terpasang) -
user
struktur tabel telah berubah.
Jadi untuk mereset kata sandi root, Anda masih memulai mySQL dengan --skip-grant-tables
opsi dan perbarui user
tabel, tetapi cara Anda melakukannya telah berubah.
1. Stop mysql:
systemctl stop mysqld
2. Set the mySQL environment option
systemctl set-environment MYSQLD_OPTS="--skip-grant-tables"
3. Start mysql usig the options you just set
systemctl start mysqld
4. Login as root
mysql -u root
5. Update the root user password with these mysql commands
mysql> UPDATE mysql.user SET authentication_string = PASSWORD('MyNewPassword')
-> WHERE User = 'root' AND Host = 'localhost';
mysql> FLUSH PRIVILEGES;
mysql> quit
*** Edit ***
As mentioned my shokulei in the comments, for 5.7.6 and later, you should use
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPass';
Or you'll get a warning
6. Stop mysql
systemctl stop mysqld
7. Unset the mySQL envitroment option so it starts normally next time
systemctl unset-environment MYSQLD_OPTS
8. Start mysql normally:
systemctl start mysqld
Try to login using your new password:
7. mysql -u root -p
Referensi
Seperti yang tertulis di http://dev.mysql.com /doc/refman/5.7/en/mysqld-safe.html ,
Yang akan membawa Anda ke http://dev .mysql.com/doc/refman/5.7/en/server-management-using-systemd.html
di mana ia menyebutkan systemctl set-environment MYSQLD_OPTS=
menuju bagian bawah halaman.
Perintah pengaturan ulang kata sandi ada di bagian bawah http:// dev.mysql.com/doc/refman/5.7/en/resetting-permissions.html