MySql允許遠程連接如何實現該功能
要達到這個目的需要實現兩點
- 開通用戶權限
- 解除本地綁定
開通用戶權限
首先登陸服務器端的MySQL
//不使用空格可以直接登陸
mysql -u用戶名 -p密碼
mysql> use mysql
mysql> select user, host from user;
效果圖

執行了代碼以后會看到所有的用戶以及對應的host
其中host的意思就是指允許訪問的Ip地址,%的意思就是任何IP,當然如果是你的本地服務器,你也可以配置為本地的一個IP。
用戶可以通過sql語句來讓host為全部即可
//更新host, 這里要選擇一個存在的user和host
//user表中 user跟host合起來才是主鍵,所以不能重復,如上圖所示,如果只查詢root更新會報錯
mysql> update user set host = '%' where user = 'root' and host = 'localhost'
這樣就修改了一個已存在的用戶的權限。
Or
可以選擇重新創建新的用戶權限。
// 當然也可以指定部分權限,比如只讀之類的
mysql>GRANT ALL PRIVILEGES ON *.* TO 'newuser'@'%' IDENTIFIED BY 'newpassword' WITH GRANT OPTION;
下面是全局的權限列表
全局管理權限:
FILE: 在MySQL服務器上讀寫文件。
PROCESS: 顯示或殺死屬于其它用戶的服務線程。
RELOAD: 重載訪問控制表,刷新日志等。
SHUTDOWN: 關閉MySQL服務。
數據庫/數據表/數據列權限:
ALTER: 修改已存在的數據表(例如增加/刪除列)和索引。
CREATE: 建立新的數據庫或數據表。
DELETE: 刪除表的記錄。
DROP: 刪除數據表或數據庫。
INDEX: 建立或刪除索引。
INSERT: 增加表的記錄。
SELECT: 顯示/搜索表的記錄。
UPDATE: 修改表中已存在的記錄。
特別的權限:
ALL: 允許做任何事(和root一樣)。
USAGE: 只允許登錄–其它什么也不允許做。
解除地址綁定
我之前開通了權限,但是本地的綁定還沒有解除,所以本地通過命令行仍然不能連接到服務器數據庫。后來看了一些資料才知道地址綁定這個東西。
我的服務器是Ubuntu Server 服務器通過apt-get安裝的mysql,配置文件的位置如下:
/etc/mysql/my.conf
其中的一行就是bind-address = 127.0.0.1
將其注釋掉即可
如果是windows的服務器,應該是my.ini文件,需要到安裝mysql的位置去找找了。
自此,本地可以通過mysql -h host -r -p來訪問遠程的mysql數據庫了
當解除了地址綁定以后需要重啟mysql的服務即可生效
感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!
您可能感興趣的文章:- MySQL數據庫遠程連接開啟方法
- 遠程連接mysql 授權方法詳解
- MySQL遠程連接丟失問題解決方法(Lost connection to MySQL server)
- mysql 遠程連接數據庫的方法集合
- 配置mysql允許遠程連接的方法
- 解決遠程連接mysql很慢的方法(mysql_connect 打開連接慢)
- navicat無法遠程連接mysql的解決方法
- MYSQL不能從遠程連接的一個解決方法(s not allowed to connect to this MySQL server)
- 解決MySQL無法遠程連接的方法
- mysql開啟遠程連接(mysql開啟遠程訪問)