ubuntu16.04下mysql 配置

OS:ubuntu 16.04

MySQL: 5.7.16


現(xiàn)狀

?? ?最近在學習WordPress,于是在windows10(以下稱主機)下搭建了ubuntu 16.04的虛擬機(以下稱客機),主機IP:192.168.1.101,客機采用橋接方式連接,客機IP:192.168.1.102。


問題

?? ? 發(fā)現(xiàn)主機能ping通客機,客機也能ping通主機,但MySQL的3306端口不通,導致主機下的navicat 無法訪問到客機中的mysql。

解決步驟

1.打開防火墻3306端口

? ? ?ubuntu使用ufw輔助設置防火墻,通過命令sudo ufw from 192.168.1.101 允許主機192.168.1.101訪問客機所有端口,當然單獨通過命令 sudo ufw allow 3306 也是單獨設置3306端口訪問的。 ?到這里客機防火墻已向主機開放相關端口。但主機navicat仍然無法訪問客機mysql。

2.查詢端口監(jiān)聽是否正常

? ? 通過命令netstat -ant | grep 3306,查詢客機linux的3306端口是ESTABLISHED(監(jiān)聽)的,不過監(jiān)聽僅限于127.0.0.1:3306,說明mysql只監(jiān)聽了127.0.0.1地址的3306端口。那么必須修改MySQL的監(jiān)聽地址才能讓主機訪問到客機的MySQL。

3.修改MySQL端口監(jiān)聽設置

? ? ?怎么修改MySQL的配置呢?網上的很多版本都在講找/etc/my.cnf,或者/etc/mysql/my.cnf進行配置。ls /etc/my.cnf沒有結果,/etc/mysql/my.cnf倒是有,通過sudo vim /etc/mysql/my.cnf打開一瞧,啥都木有啊


這下輪到我懵逼了

去這2個目錄下找找唄,恩,上天垂愛,原來真正的配置文件在/etc/mysql/mysql.conf.d的目錄下,就是mysqld.cnf文件,執(zhí)行命令sudo vim /etc/mysql/mysql.conf.d/mysqld.cnf


/etc/mysql/mysql.conf.d/mysqld.cnf


注釋掉bind-address=127.0.0.1

使用#注釋掉bind-address=127.0.0.1,撤銷僅綁定127.0.0.1地址,如果不注釋,修改為0.0.0.0即可所有機器訪問該MySQL服務器。


成功訪問客機
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

友情鏈接更多精彩內容