MySQL: Akses ditolak kepada pengguna 'test'@'localhost' kecuali pengguna root (pengesahan kata laluan: ya)
P粉080643975
2023-08-21 13:05:31
<p>Saya menghadapi masalah menggunakan pengguna bukan root/admin mysql, saya mengikuti langkah di bawah untuk mencipta pengguna dan kebenaran, sila betulkan saya jika saya melakukan sesuatu yang salah: </p>
<p>Saya memasang <code>mysql</code> pada <code>RHEL 5.7 64bit</code>, pakej pemasangan adalah seperti berikut, setelah saya melengkapkan <code>rpm install</code>, kami Akan</p>
<ol>
<li>Gunakan <code>mysql_install_db</code>
<li>Mulakan perkhidmatan mysql, kemudian</li>
<li>Menggunakan <code>mysql_upgrade</code> juga akan beroperasi pada pelayan. </li>
</ol>
<p>Selepas proses ini, saya boleh log masuk menggunakan <code>root</code>, tetapi tidak boleh log masuk ke pelayan dengan pengguna bukan root: </p>
<pre class="brush:php;toolbar:false;">[root@clustertest3 ~]# rpm -qa |
MySQL-client-advanced-5.5.21-1.rhel5
MySQL-server-advanced-5.5.21-1.rhel5
[root@clustertest3 ~]# cat /etc/my.cnf
[mysqld]
datadir=/var/lib/mysql
soket=/var/lib/mysql/mysql.sock
pengguna=mysql
# Lalai menggunakan format kata laluan lama untuk keserasian dengan mysql 3.x
# pelanggan (mereka yang menggunakan pakej keserasian mysqlclient10).
kata laluan_lama=1
# Melumpuhkan pautan simbolik disyorkan untuk mengelakkan pelbagai risiko keselamatan;
# untuk berbuat demikian, nyahkomen baris ini:
# pautan-simbol=0
[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
[root@clustertest3 ~]# ls -ld /var/lib/mysql/mysql.sock
srwxrwxrwx 1 mysql mysql 0 Nov 30 11:09 /var/lib/mysql/mysql.sock
mysql> BUAT PENGGUNA 'golden'@'%' DIKENAL PASTI OLEH 'kata laluan';
Pertanyaan OK, 0 baris terjejas (0.00 saat)
mysql> BERIKAN SEMUA KEISTIMEWAAN PADA * .
Pertanyaan OK, 0 baris terjejas (0.00 saat)
mysql> KEISTIMEWAAN FLUSH;
Pertanyaan OK, 0 baris terjejas (0.00 saat)
mysql> SELECT USER(),CURRENT_USER();
+----------------+----------------+
|. USER() |
+----------------+----------------+
|. root@localhost |
+----------------+----------------+
1 baris dalam set (0.00 saat)
[root@clustertest3 ~]# mysql -ugolden -p
Masukkan kata laluan:
RALAT 1045 (28000): Akses dinafikan untuk pengguna 'golden'@'localhost' (menggunakan kata laluan: YES)</pre>
<p>Ini adalah masalah yang saya hadapi, adakah ada penyelesaian? </p>
Jangan berikan semua kebenaran kepada pengguna bukan root pada semua pangkalan data, ia tidak selamat (dan anda sudah mempunyai pengguna "root" dengan peranan itu)
Pernyataan ini mencipta pengguna baharu dan memberikan kebenaran yang dipilih. Contohnya:
Sila lihat Dokumentasi untuk melihat semua kebenaran terperinci
EDIT: Anda boleh mendapatkan lebih banyak maklumat menggunakan pertanyaan ini (log masuk sebagai "root"):
Lihat apa yang berlaku