設置 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. node.js - nodejs+express+vue2. javascript - 我的站點貌似被別人克隆了, google 搜索特定文章,除了域名不一樣,其他的都一樣,如何解決?3. java - web端百度網(wǎng)盤的一個操作為什么要分兩次請求服務器, 有什么好處嗎4. 數(shù)據(jù)庫 - Mysql的存儲過程真的是個坑!求助下面的存儲過程哪里錯啦,實在是找不到哪里的問題了。5. python - 如何把152753這個字符串轉(zhuǎn)變成時間格式15:27:536. 使用mysql命令行連接遠程數(shù)據(jù)庫host跳轉(zhuǎn)7. javascript - onclick事件點擊不起作用8. css - C#與java開發(fā)Windows程序哪個好?9. javascript - webpack-dev-server和webpack沖突嗎10. python 字符串匹配問題

網(wǎng)公網(wǎng)安備