登陸MySQL,同時指定對應的端口和ip。
十多年的伊通網站建設經驗,針對設計、前端、開發(fā)、售后、文案、推廣等六對一服務,響應快,48小時及時工作處理。成都全網營銷的優(yōu)勢是能夠根據用戶設備顯示端的尺寸不同,自動調整伊通建站的顯示方式,使網站能夠適用不同顯示終端,在瀏覽器中調整網站的寬度,無論在任何一種瀏覽器上瀏覽網站,都能展現優(yōu)雅布局與設計,從而大程度地提升瀏覽體驗。創(chuàng)新互聯從事“伊通網站設計”,“伊通網站推廣”以來,每個客戶項目都認真落實執(zhí)行。
假設遠程的ip為: 182.61.4.169
端口為: 2877
1、首先檢查mysql所在服務器的防火墻,如果限制了外網對3306端口的連接,那么放開限制
Linux服務器中執(zhí)行
iptables -L 可以查看當前的防火墻規(guī)則
iptables -F 可以清空所有防火墻規(guī)則
2、確保mysql的監(jiān)聽地址是0.0.0.0
監(jiān)聽地址是0.0.0.0 ,表示該mysql允許所有IP地址進行連接,這是允許遠程連接的基礎
監(jiān)聽地址是127.0.0.1,則代表該mysql只允許所在服務器本機連接,外網是無法連接的
怎么知道m(xù)ysql的監(jiān)聽地址是多少
Linux服務器中執(zhí)行如下命令可以查看: netstat -nutlp|grep mysql
3、添加遠程連接mysql的賬號
此步驟是必須要操作的,mysql本身的用戶只能在本機上連接數據庫,外網連接的話,需要先添加遠程用戶并授權。
在mysql命令行模式下,或者phpmyadmin中執(zhí)行sql語句添加遠程連接用戶
grant all on *.* to root@'%' identified by '123456';
flush privileges;
命令解釋:
*.* 第一個*表示庫,第二個*表示表; *.*對全部數據庫的全部表授權,so.ok 表示只對so這個庫中的ok表授權
root 表示要給哪個用戶授權,這個用戶可以是存在的用戶,也可以是不存在的
'%' 表示允許遠程連接的IP地址,%代表允許所有IP連接
只允許某個IP遠程連接,可以寫成'123.123.123.123'
只允許123.123.123.*這個網段遠程連接,可以寫成 '123.123.123.%' '123456' 是設置授權用戶的連接密碼
flush privileges; 代表立即刷新權限表,使添加的用戶生效
上面三步都設置好了,就可以再次嘗試遠程連接mysql了。
整體簡介:
為了安全起見默認情況下Mysql數據庫的監(jiān)聽地址是127.0.0.1,就是指本機下的程序才能訪問。
監(jiān)聽地址是0.0.0.0 ,表示該mysql允許所有IP地址進行連接,這是允許遠程連接的基礎
監(jiān)聽地址是127.0.0.1,則代表該mysql只允許所在服務器本機連接,外網是無法連接的
所需工具原料:
Linux,apache,php,mysql
解決方法:
1. 用命令vi 編輯/etc/mysql/my.cnf 如圖:
在[mysqld]節(jié)中增加下面一行:
2. bind-address=0.0.0.0? #全部地址或者指定的ip地址如圖所示
3. 重啟服務
service mysqld restart
4. Linux服務器中執(zhí)行如下命令可以查看:??? netstat -nutlp|grep mysql(只查看mysql的監(jiān)聽), netstat -tln(查看所有的監(jiān)聽)是否成功。