MySQL 用戶訪問授權

以前架 MySQL 服務器都是在本機上,沒有考慮過用戶授權的問題,直接使用 root 用戶進行連接數據庫。後來開發組內部共同使用一個 MySQL 數據庫,問題出現了,每次都是數據庫連接無法獲得。非常奇怪,而且用戶名和密碼都是對的。

於是查找 MySQL 開發手冊,對這個的解釋是:root 用戶僅能從本機訪問。
查詢一下用戶表:
select host, user from mysql.user where user
='root';
+-----------+------+
| host      | user |
+-----------+------+
| localhost | root |
+-----------+------+
1 row in set (0.00 sec)
發現問題的原因之後,新建一個用戶並授予訪問權限。
grant all privileges on test.
* to newuser@'%'
     identified by security;
flush privileges;
授予 test 數據庫的 所有表 的 所有訪問權限 給 從任意客戶端 登錄的 newuser 用戶。
查詢一下用戶表:
select host, user from mysql.user where user
='newuser';
+-----------+---------+
| host      | user    |
+-----------+---------+
| %         | newuser |
+-----------+---------+
1 row in set (0.00 sec)

對於 Windows 操作系統還需要 關閉防火牆 或者 將 MySQL 放到 防火牆 的例外列表中去纔可以。
現在,從任意客戶端都可以使用 newuser 用戶名進行訪問了。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章