Mengapa pengguna mysql ini tidak bisa masuk dengan kata sandi?

8

Di phpmyadmin saya membuat pengguna bernama "edward" dengan kata sandi dan semua hak istimewa:

masukkan deskripsi gambar di sini

Namun ketika saya mencoba masuk melalui phpmyadmin, dikatakan "Tidak bisa masuk ke Server MySQL".

Ketika saya mencoba masuk pada baris perintah (Windows 7), itu tidak akan mengizinkan saya: masukkan deskripsi gambar di sini

Tetapi jika saya masuk tanpa kata sandi, saya masuk:

masukkan deskripsi gambar di sini

dan hanya menunjukkan kepada saya dua tabel.

Saya yakin kata sandinya benar dan saya telah membuat banyak pengguna yang semuanya tidak bisa masuk dengan kata sandi mereka, tidak peduli berapa banyak hak yang saya berikan kepada mereka.

Bagaimana saya bisa membuat pengguna ini hanya bisa masuk dengan kata sandi dan melihat semua database?


Tambahan:

Berikut ini adalah tangkapan layar dari phpmyadmin yang menunjukkan bahwa "edward" memiliki hak sebanyak "root":

masukkan deskripsi gambar di sini

Edward Tanguay
sumber
Anda yakin mengatur kata sandi? Coba SET PASSWORD FOR 'edward'@'%' = PASSWORD( 'YOU PASSWORD HERE' ).
hellodanylo
ya, saya login sebagai root dan mengatur kata sandi lagi dengan perintah itu, tapi saya masih tidak bisa login sebagai edward, seolah-olah ada semacam pengaturan global terhadap siapa pun yang masuk kecuali root, saya menginstal ini dengan xampp
hal yang sama terjadi pada saya, dan kata sandi diatur dengan benar pada perintah buat pengguna
santiago arizti

Jawaban:

6

Karena Anda memberinya akses tanpa kata sandi ... Jika pengguna tidak memiliki kata sandi, masuk dengan kata sandi akan selalu gagal.

Tetapkan kata sandi untuk pengguna, hanya dengan itu Anda akan dapat menggunakannya-p

Selain itu, Anda mungkin ingin menghapus Anypengguna.

poncha
sumber
Saya memberikannya kata sandi dalam phpmyadmin (seperti yang diperlihatkan dalam cuplikan layar di atas), dan pada prompt perintah saya masuk lagi dan memberikannya kata sandi dengan set password for 'edward'@'%' = password('test');tetapi masih tidak bisa masuk dengan kata sandi, seolah-olah kata sandi tidak sedang diatur, tetapi sedang ditampilkan sedang diatur
4
tangkapan layar Anda menunjukkan %host, namun Anda mengaksesnya dari localhost, yang membuat perbedaan. Anda mungkin memiliki hibah lain di sana, yang cocok dengan siapa pun di localhost, tanpa kata sandi. pengguna dengan host yang ditentukan adalah definisi yang lebih kuat
poncha
2
ok, saya mengubahnya dari %menjadi localhostdan sekarang saya bisa login, dan juga, seperti yang Anda katakan, jika saya menghapus entri "sembarang pengguna", saya dapat menggunakannya %di edward, terima kasih.
Edward Tanguay
0

Kemungkinan besar Anda telah memberikan hak istimewa pada server, tetapi tidak pada database. MencobaGRANT ALL ON *.* TO 'edward' IDENTIFIED BY 'password'

Eugen Rieck
sumber
Saya login sebagai root dan mengatur kata sandi dengan perintah itu untuk database "test" dan "edward" tapi saya masih tidak bisa login sebagai edward dengan kata sandinya
Maaf: seharusnya saya mengacaukannya *.*, bukan *- saya mengedit jawaban saya.
yang masih tidak berfungsi, seperti yang ditunjukkan pada layar di atas, pengguna edward memiliki semua hak, sebanyak root sebenarnya
Edward Tanguay
0

Masalah yang sama tidak dapat dipecahkan secara gratis. Menghapus basis data, menghapus direktori dan menginstal ulang pada Centos 6.3. Baris perintah menunjukkan beberapa data yang kemudian digulir dengan cepat yang memecahkan masalah bagi saya. Disisipkan di bawah.

HARAP DIINGAT UNTUK MENETAPKAN PASSWORD UNTUK PENGGUNA root MySQL!

Untuk melakukannya, jalankan server, lalu jalankan perintah berikut:

/usr/bin/mysqladmin -u root password 'new-password'
/usr/bin/mysqladmin -u root -h cch-web-centos password 'new-password'

Atau Anda dapat menjalankan:

/usr/bin/mysql_secure_installation

Yang terakhir adalah yang bekerja untuk saya. Saya memasukkan kata sandi root dan itu benar-benar BEKERJA. Memasukkan kata sandi root menggunakan mysqladmin tanpa menjalankan skrip itu memberi saya kesalahan yang sama yang dilaporkan Edward. Jalankan skrip, jawab pertanyaan, sekarang menggunakan kata sandi root berfungsi dan masuk tanpa kata sandi ditolak. Yang ini membuatku gila juga. Saya telah menginstal mysql berkali-kali dan ini adalah pertama kalinya saya mengalami masalah ini. Tidak yakin apakah itu masalah yum / centos seperti di Ubuntu dan Fedora saya tidak punya masalah ini.

lengan
sumber