怎樣設置才能允許外網訪問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;

或者也可以執行:

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;


分享到:


相關文章: