Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

Akses Ditolak untuk Pengguna 'root'@'localhost' (menggunakan kata sandi:YA) - Tidak Ada Hak Istimewa?

Jika Anda memiliki masalah yang sama di MySql 5.7.+ :

Access denied for user 'root'@'localhost'

itu karena MySql 5.7 secara default memungkinkan untuk terhubung dengan soket, yang berarti Anda hanya terhubung dengan sudo mysql . Jika Anda menjalankan sql :

SELECT user,authentication_string,plugin,host FROM mysql.user;

maka Anda akan melihatnya :

+------------------+-------------------------------------------+-----------------------+-----------+
| user             | authentication_string                     | plugin                | host      |
+------------------+-------------------------------------------+-----------------------+-----------+
| root             |                                           | auth_socket           | localhost |
| mysql.session    | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE | mysql_native_password | localhost |
| mysql.sys        | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE | mysql_native_password | localhost |
| debian-sys-maint | *497C3D7B50479A812B89CD12EC3EDA6C0CB686F0 | mysql_native_password | localhost |
+------------------+-------------------------------------------+-----------------------+-----------+
4 rows in set (0.00 sec)

Untuk mengizinkan koneksi dengan root dan kata sandi, maka perbarui nilai dalam tabel dengan perintah :

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'Current-Root-Password';
FLUSH PRIVILEGES;

Kemudian jalankan perintah pilih lagi dan Anda akan melihatnya telah berubah :

+------------------+-------------------------------------------+-----------------------+-----------+
| user             | authentication_string                     | plugin                | host      |
+------------------+-------------------------------------------+-----------------------+-----------+
| root             | *2F2377C1BC54BE827DC8A4EE051CBD57490FB8C6 | mysql_native_password | localhost |
| mysql.session    | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE | mysql_native_password | localhost |
| mysql.sys        | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE | mysql_native_password | localhost |
| debian-sys-maint | *497C3D7B50479A812B89CD12EC3EDA6C0CB686F0 | mysql_native_password | localhost |
+------------------+-------------------------------------------+-----------------------+-----------+
4 rows in set (0.00 sec)

Dan itu saja. Anda dapat menjalankan proses ini setelah menjalankan dan menyelesaikan sudo mysql_secure_installation perintah.

Untuk mariadb, gunakan

SET PASSWORD FOR 'root'@'localhost' = PASSWORD('manager');

untuk menyetel sandi. Selengkapnya di https://mariadb.com/kb/en/set- kata sandi/



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Apakah SQL Server Menawarkan Apa Pun Seperti MySQL's ON DUPLICATE KEY UPDATE?

  2. MySQL PADA KUNCI DUPLICATE - masukkan id terakhir?

  3. Menyiapkan Laravel pada kesalahan migrasi artisan php Mac:Tidak ada file atau direktori seperti itu

  4. Cara Memulihkan Cluster MySQL Galera Dari Budak Asinkron

  5. Bisakah pemicu MySQL mensimulasikan batasan CHECK?