設置 mysql 的 root用戶 可以被外網(wǎng)訪問后的問題
問題描述
修改 root 用戶可以不在本地的時候登錄
mysql> use mysql;Database changedmysql> 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
以上步驟完成之后,遇到個問題就是:在本地的時候mysql -uroot回車,回車后居然就可以直接登錄了
反而不能通過密碼登錄了:
C:wampmysqlbin>mysql -uroot -pEnter password: *********ERROR 1045 (28000): Access denied for user ’root’@’localhost’ (using password: YES)C:wampmysqlbin>
這是為什么?
問題解答
回答1:localhost不在%里mysql -uroot -h127.0.0.1 -p和mysql -uroot -p相當于用2個用戶登錄
update user set host=’%’ where user=’root’;而且你這樣更改,相當于把上面3條記錄都修改了,所以系統(tǒng)提示你'ERROR 1062 (23000): Duplicate entry ’%-root’ for key ’PRIMARY’錯誤了,因為Host,User字段是復合主鍵不唯一。
所以,LZ執(zhí)行這條語句,其實是不成功的。所以從這一步往下都不用看了。
相關文章:
1. angular.js - angularjs的自定義過濾器如何給文字加顏色?2. nignx - docker內(nèi)nginx 80端口被占用3. android-studio - Android studio導入老版本的2048項目報錯4. 為什么return不了數(shù)據(jù)給ajax5. java - mybatis里的REGEXP6. PhpStorm 輸入php按tab后生成的起始結束標簽<php><php> 如何修改?7. PHP 怎么api獲取json數(shù)據(jù)8. PHP類屬性聲明?9. php mail無法發(fā)送郵件10. 做一個抽獎系統(tǒng)
