怎樣設定才能允許外網訪問MySQL

dunne21發表於2021-09-09

設定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;
或者也可以執行:
mysql>grand 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;

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/1600/viewspace-2810798/,如需轉載,請註明出處,否則將追究法律責任。

相關文章