cari

Rumah  >  Soal Jawab  >  teks badan

Masalah selepas menetapkan pengguna root mysql boleh diakses dari rangkaian luaran

Ubah suai pengguna root supaya boleh log masuk apabila bukan tempatan

mysql> use mysql;
Database changed
mysql> select host,user from user;
+-----------+------+
| host      | user |
+-----------+------+
| 127.0.0.1 | root |
| ::1       | root |
| localhost | root |
+-----------+------+
3 rows in set (0.00 sec)

mysql> update user set host='%' where user='root';
ERROR 1062 (23000): Duplicate entry '%-root' for key 'PRIMARY'
mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)

mysql> exit;
Bye

Selepas melengkapkan langkah di atas, saya menghadapi masalah:
Apabila saya tempatanmysql -uroot回车, saya boleh log masuk terus selepas menekan Enter

Tetapi saya tidak boleh log masuk melalui kata laluan:

C:\wamp\mysql\bin>mysql -uroot -p
Enter password: *********
ERROR 1045 (28000): Access denied for user 'root'@'localhost' 
(using password: YES)

C:\wamp\mysql\bin>

Kenapa ni?

PHP中文网PHP中文网2807 hari yang lalu899

membalas semua(1)saya akan balas

  • 習慣沉默

    習慣沉默2017-05-18 10:54:20

    localhost tiada dalam %
    mysql -uroot -h127.0.0.1 -p
    dan
    mysql -uroot -p
    setara dengan log masuk dengan 2 pengguna

    kemas kini hos set pengguna='%' di mana pengguna='root';
    Dan jika anda menukarnya seperti ini, ia adalah bersamaan dengan mengubah suai tiga rekod di atas, jadi sistem menggesa anda "ERROR 1062 (23000): Entri pendua ' %-root' ' untuk kunci 'PRIMER' adalah salah kerana medan Hos dan Pengguna ialah kunci utama komposit dan bukan unik

    Jadi, pelaksanaan kenyataan ini LZ sebenarnya tidak berjaya. Jadi tidak perlu melihat lebih jauh dari langkah ini.

    balas
    0
  • Batalbalas