Navicat 遠程連接 MySQL


相信大家都有在遠程服務器上進行開發吧,其中 MySQL 的使用率應該也會挺高,如果使用 Navicat 等可視化工具來操作遠程數據庫不失為一種很好的選擇,避免了在命令行寫 SQL 語句的操作。下面簡單介紹一下 Navicat 連接遠程數據庫的操作。

1

首先我們需要更改 3306端口,查看3306 端口是否對外開放,MySQL 默認情況下是不開放對外訪問功能的。語句如下:

netstat -an | grep 3306

如果查詢結果如下,需要我們更改 MySQL 配置文件。

可以看出,mysql的3306端口只是監聽本地的連接,這樣就阻礙了外部IP對該數據庫的訪問,修改 MySQL 配置文件 my.conf :

vim /etc/mysql/my.cnf

找到

# Instead of skip-networking the default is now to listen only on
# localhost which is more compatible and is not less secure.
bind-address  = 127.0.0.1 

bind-address = 127.0.0.1 這行注釋掉或者改為你想要使用的客戶端主機 ip。

至此 MySQL 遠程訪問端口就成功開啟了。

2

我們進入 MySQL 命令界面,運行下列SQL 語句,查看用戶是否具有訪問權限:

use mysql;
select user, host from user;

返回結果如下:

我們使用通配符 % 來修改 root 用戶對應的 host 字段,使具有訪問所有 ip 地址的權限:

update user set host = '%' where user = 'root';

如果拋出如下異常:

Duplicate entry '%-root' for key 'PRIMARY'

說明有多個ROOT用戶紀錄在USER表中了,我們重新執行:

select host from user where user = 'root';

便能看到字段 host 的 % 值。

我們執行:

flush privileges;

刷新一下 MySQL 的系統權限相關表。

最后重啟一下 MySQL 服務:

sudo restart mysql

3

服務端設置好了,我們在 Navicat 客戶端設置一下連接:

打開 Navicat,點擊左上方的 "連接",設置一下數據庫的用戶名,地址,密碼等,便能在 Navicat 中遠程操作服務器上的 MySQL 啦。


免責聲明!

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



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