mysql 的root 用戶無法授權,navicat 遠程授權提示1044解決方案


先看解決方案

#------------mysql root 用戶無法賦權問題解決 --------
1,登錄  mysql -u root -p
2,use mysql; 選擇mysql數據庫
3,執行以下操作(查詢用戶的賦權權限,更改賦權權限 ,刷新生效)
mysql> select user,host,grant_priv from user;
+---------------+-----------+------------+
| user          | host      | grant_priv |
+---------------+-----------+------------+
| root          | localhost | Y          |
| mysql.session | localhost | N          |
| mysql.sys     | localhost | N          |
| root          | %         | N          |
| xc_admin      | %         | N          |
+---------------+-----------+------------+
5 rows in set (0.00 sec)

mysql> update user set grant_priv='Y' where user = 'root';'
Query OK, 1 row affected (0.00 sec)
Rows matched: 2  Changed: 1  Warnings: 0

mysql> flush privileges;#刷新權限
Query OK, 0 rows affected (0.00 sec)

mysql> select user,host,grant_priv from user;
+---------------+-----------+------------+
| user          | host      | grant_priv |
+---------------+-----------+------------+
| root          | localhost | Y          |
| mysql.session | localhost | N          |
| mysql.sys     | localhost | N          |
| root          | %         | Y          |
| xc_admin      | %         | N          |
+---------------+-----------+------------+
5 rows in set (0.00 sec)

解析:通過第一個查詢語句可以看出 默認的root 在非本地權限中的grant_priv(賦權權限)是關閉的。

可以理解為:用root用戶在本地的機器上(安裝mysql的那台機器)是能賦權的。其他IP賦權是默認不允許的。可能為了安全性考慮

那我們使用工具遠程創建用戶就會出現1044 代碼。通過重新更新權限就能解決這個問題。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM