Pesan kesalahan itu biasanya berarti bahwa kata sandi yang kita gunakan tidak cocok dengan apa yang menurut MySQL seharusnya menjadi kata sandi untuk pengguna yang kita sambungkan, atau pengguna MySQL yang cocok tidak ada (belum dibuat).
Di MySQL, pengguna diidentifikasi dengan nama pengguna ("test2") dan sebuah host ("localhost").
Pesan kesalahan mengidentifikasi pengguna ("test2") dan host ("localhost") nilai...
'test2'@'localhost'
Kami dapat memeriksa untuk melihat apakah pengguna itu ada, menggunakan kueri ini dari klien yang dapat kami sambungkan dari:
SELECT user, host FROM mysql.user
Kami sedang mencari baris yang memiliki "test2" untuk pengguna , dan "localhost" untuk host .
user host
------- -----------
test2 127.0.0.1 cleanup
test2 ::1
test2 localhost
Jika baris itu tidak ada, maka host dapat disetel ke nilai wildcard %
, untuk mencocokkan host lain yang tidak cocok.
Jika baris ada, kata sandi mungkin tidak cocok. Kami dapat mengubah kata sandi (jika kami terhubung sebagai pengguna dengan hak istimewa yang memadai, misalnya root
SET PASSWORD FOR 'test2'@'localhost' = PASSWORD('mysecretcleartextpassword')
Kami juga dapat memverifikasi bahwa pengguna memiliki hak istimewa pada objek dalam database.
GRANT SELECT ON jobs.* TO 'test2'@'localhost'
EDIT
Jika kita membuat perubahan pada tabel hak istimewa mysql dengan operasi DML (INSERT,UPDATE,DELETE), perubahan tersebut tidak akan berlaku sampai MySQL membaca ulang tabel. Kami dapat membuat perubahan efektif dengan memaksa membaca ulang dengan FLUSH PRIVILEGES
pernyataan, dieksekusi oleh pengguna yang memiliki hak istimewa.