本文目錄一覽:
怎樣設置才能允許外網訪問MySQL
1.在本機先使用root用戶登錄mysql:
mysql -u root -p”youpassword”
2.進行授權操作:
mysqlGRANT ALL PRIVILEGES ON *.* TO ‘root’@’%’ IDENTIFIED BY ‘youpassword’ WITH GRANT OPTION;
3.重載授權表:
FLUSH PRIVILEGES;
4.退出mysql數據庫:
exit
如何允許外網可以連接mysql數據庫
設置mysql服務允許外網訪問,修改mysql的配置文件,有的是my.ini,有的是my.cnf【linux】.
1:設置mysql的配置文件
/etc/mysql/my.cnf
找到 bind-address =127.0.0.1 將其注釋掉;//作用是使得不再只允許本地訪問;
重啟mysql:/etc/init.d/mysql restart;
2:登錄mysql數據庫:mysql -u root -p
mysql use mysql;
查詢host值:
mysql select user,host from user;
如果沒有”%”這個host值,就執行下面這兩句:
mysql update user set host=’%’ where user=’root’;
mysql flush privileges;
或者也可以執行:
mysqlgrand all privileges on *.* to root@’%’ identifies by ‘ xxxx’;
其中 第一個*表示數據庫名;第二個*表示該數據庫的表名;如果像上面那樣 *.*的話表示所有到數據庫下到所有表都允許訪問;
『%’:表示允許訪問到mysql的ip地址;當然你也可以配置為具體到ip名稱;%表示所有ip均可以訪問;
後面到『xxxx’為root 用戶的password;
舉例:
任意主機以用戶root和密碼mypwd連接到mysql服務器
mysql GRANT ALL PRIVILEGES ON *.* TO ‘root’@’%’ IDENTIFIED BY ‘mypwd’ WITH GRANT OPTION;
mysql flush privileges;
IP為192.168.1.102的主機以用戶myuser和密碼mypwd連接到mysql服務器
mysql GRANT ALL PRIVILEGES ON *.* TO ‘myuser’@’192.168.1.102’ IDENTIFIED BY ‘mypwd’ WITH GRANT OPTION;
mysql flush privileges;
redmine怎麼讓外網能訪問mysql
root默認是不支持遠程登錄的,用外網連接你必須給權限呢?GRANT ALL PRIVILEGES ON *.* TO’username’@’ %’ IDENTIFIED BY ‘password’ WITH GRANT OPTION;你先創建一個遠程登錄的賬號然後給它遠程登錄的權限
mysql的root賬戶,我在連接時通常用的是localhost或127.0.0.1,公司的測試服務器上的mysql也是localhost所以我想訪問無法訪問,測試暫停.
解決方法如下:
1,修改表,登錄mysql數據庫,切換到mysql數據庫,使用sql語句查看”select host,user from user ;” mysql -u root -pvmwaremysqluse mysql; mysqlupdate user set host = ‘%’ where user =’root’; mysqlselect host, user from user; mysqlflush privileges; 注意:最後一句很重要,目的是使修改生效.如果沒有寫,則還是不能進行遠程連接.
2,授權用戶,你想root使用密碼從任何主機連接到mysql服務器 GRANT ALL PRIVILEGES ON *.* TO ‘root’@’%’ IDENTIFIED BY ‘admin123’ WITH GRANT OPTION; flush privileges; 如果你想允許用戶root從ip為192.168.1.104的主機連接到mysql服務器 GRANT ALL PRIVILEGES ON *.* TO ‘myuser’@’192.168.1.104’ IDENTIFIED BY ‘admin123’ WITH GRANT OPTION; flush privileges;
路由器外網訪問mysql數據庫
1.符合以下條件
公網IP 無論動態還是靜態 靜態更好 動態如果嫌麻煩可以用DDNS服務 如花生殼
2.開放端口
無論你是否是路由連入 還是撥號連入 路由需要在路由器中做3306端口映射 撥號寬帶需要在防火牆中允許3306端口訪問 可以用telnet命令測試
3.MYSQL用戶權限 (這裡比較重要)
在安裝MYSQL是 ROOT默認是只有本地訪問權限 localhost可以在安裝的時候改成可以遠程remote安裝的最後一步 有個選項框要勾 這是WINDOWS版本的 如果是LINUX版本用命令加權限
如果建立新用戶 一定要要有%遠程權限才可以
4測試
在自帶命令行中測試 mysql -h(IP地址) -u用戶名 -p(密碼) 回車後如果出現mysql
如何訪問 外網mysql數據庫
設置mysql服務允許外網訪問,修改mysql的配置文件,有的是my.ini,有的是my.cnf【linux】.
1:設置mysql的配置文件
/etc/mysql/my.cnf
找到 bind-address =127.0.0.1 將其注釋掉;//作用是使得不再只允許本地訪問;
重啟mysql:/etc/init.d/mysql restart;
2:登錄mysql數據庫:mysql -u root -p
mysql use mysql;
查詢host值:
mysql select user,host from user;
如果沒有”%”這個host值,就執行下面這兩句:
mysql update user set host=’%’ where user=’root’;
mysql flush privileges;
或者也可以執行:
mysqlgrand all privileges on *.* to root@’%’ identifies by ‘ xxxx’;
其中 第一個*表示數據庫名;第二個*表示該數據庫的表名;如果像上面那樣 *.*的話表示所有到數據庫下到所有表都允許訪問;
『%’:表示允許訪問到mysql的ip地址;當然你也可以配置為具體到ip名稱;%表示所有ip均可以訪問;
後面到『xxxx’為root 用戶的password;
舉例:
任意主機以用戶root和密碼mypwd連接到mysql服務器
mysql GRANT ALL PRIVILEGES ON *.* TO ‘root’@’%’ IDENTIFIED BY ‘mypwd’ WITH GRANT OPTION;
mysql flush privileges;
IP為192.168.1.102的主機以用戶myuser和密碼mypwd連接到mysql服務器
mysql GRANT ALL PRIVILEGES ON *.* TO ‘myuser’@’192.168.1.102’ IDENTIFIED BY ‘mypwd’ WITH GRANT OPTION;
mysql flush privileges;
mysql 遠程連接方法
mysql開啟遠程連接:
以 root用戶登入mysql
GRANT all privileges ON wang.* TO ‘wang’@’%’ identified by ‘wang’;
flush privileges;
請點擊輸入圖片描述
修改配置文件
vi /etc/mysql/my.cnf
把bind-address = 127.0.0.1 這行注掉
重啟數據庫
service mysql restart
請點擊輸入圖片描述
本地測試連接3306端口
telnet 192.168.1.77 3306 若已連通
確定已安裝mysql客戶端which mysql
/usr/bin/mysql
然後mysql -uwang -h192.168.1.77 -p 看能否登錄
請點擊輸入圖片描述
外網如何利用網絡輔助nat123實現訪問內網mysql數據庫?
網絡環境:動態公網IP。
明確mysql數據庫內網訪問地址端口,確保mysql數據庫服務正常,在內網可以正常訪問連接。內網使用nat123動態域名解析。內網服務器安裝nat123客戶端,並使用它。登陸。進入主面板/域名解析列表/添加域名。選擇動態域名解析記錄,使用二級域名,或自己的域名。鼠標放在輸入框有嚮導提示。
請點擊輸入圖片描述
路由器端口映射,路由映射mysql數據庫訪問端口。
因為公網IP是在路由器上的,外網訪問時,需要經過路由,需要在路由器上做端口映射,將內網mysql數據庫訪問端口打通。路由器端口映射位置:轉發規則/虛擬服務器/添加允許外網訪問端口和協議。我的mysql數據庫端口是默認的3306,我內網對應mysql數據庫主機的內網IP地址是192.168.1.22。
請點擊輸入圖片描述
外網訪問時,使用動態解析域名。
在外網訪問mysql數據庫時,使用動態解析域名進行連接訪問。域名是不變的,可以上網即可訪問,再也不擔心動態公網IP變化的問題。
請點擊輸入圖片描述
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/193148.html