mysql開啟遠端訪問需要同時滿足一下兩個條件:
1、資料庫使用者名稱允許外網ip訪問
2、伺服器允許外網ip訪問
以下假設mysql伺服器位址為192.168.1.10,埠為3306資料庫設定
1、新增外網資料庫使用的使用者名稱和密碼,並賦予外網可訪問的許可權
#假設使用者名為write,密碼為write,%代表任何ip都可以訪問
grant all on *.* to 'write'@'%' identified by 'write';
2、確認my.cnf配置(之前遇到的乙個坑)
#注釋掉下面這行配置,或者修改為遠端的伺服器ip
#bind-address = 127.0.0.1
防火牆埠開啟
可以通過telnet確認3306埠是否開啟
telnet 192.168.1.10 3306
如果未開啟,可以按照以下方法開啟。
1、執行 vi /etc/sysconfig/iptables
# firewall configuration written by system-config-securitylevel
# manual customization of this file is not recommended.
*filter
:input drop [0:0]
:forward accept [0:0]
:output accept [0:0]
:syn-flood - [0:0]
-a input -i lo -j accept
-a input -m state --state related,established -j accept
-a input -p tcp -m state --state new -m tcp --dport 22 -j accept
-a input -p tcp -m state --state new -m tcp --dport 21 -j accept
-a input -p tcp -m state --state new -m tcp --dport 80 -j accept
# 加入下面這行,開啟3306埠
-a input -p tcp -m state --state new -m tcp --dport 3306 -j accept
-a input -p tcp -m state --state new -m tcp --dport 3690 -j accept
-a input -p tcp -m state --state new -m tcp --dport 20000:30000 -j accept
-a input -p icmp -m limit --limit 100/sec --limit-burst 100 -j accept
-a input -p icmp -m limit --limit 1/s --limit-burst 10 -j accept
-a input -p tcp -m tcp --tcp-flags fin,syn,rst,ack syn -j syn-flood
-a input -j reject --reject-with icmp-host-prohibited
-a syn-flood -p tcp -m limit --limit 3/sec --limit-burst 6 -j return
-a syn-flood -j reject --reject-with icmp-port-unreachable
commit
2、重啟iptables
service iptables restart
或者/etc/init.d/iptables restart
下面可以試著在遠端伺服器上連線mysql了
mysql -h 192.168.1.10 -p3306 -uwrite -p
mysql 開啟遠端訪問 遠端訪問
select host,user,password from user 查詢使用者遠端訪問相關資訊 用root使用者登陸,然後 grant all privileges on to 建立的使用者名稱 identified by 密碼 flush privileges 重新整理剛才的內容 格式 gra...
MySQL 開啟遠端訪問
登入mysql mysql u root p 輸入密碼建立賬號 mysql use mysql mysql create user remote user identified by password 表示可以接受從任意ip的主機訪問,也可以寫成固定ip,這樣就只能從這個ip的機子訪問。為這個賬號賦...
開啟Mysql遠端訪問
mysql預設是不可以通過遠端機器訪問的,通過下面的配置可以開啟遠端訪問.我的mysql環境是ubuntu mysql5 1.修改 etc mysql my.conf,修改bind address,指定為本機實際ip位址,你的my.con修改完大概是如下的樣子 mysqld basic settin...