Mysql遠程鏈接配置

Mysql遠程鏈接配置

環境:unbuntu 16.04mysql

最新版本的Mysql在遠程鏈接的配置上與老版本有了一些出入,照原先的配置已經不行了,因此在這裏記錄一下遇到的全部新問題。sql

配置遠程鏈接的步驟以下:ubuntu

配置權限

進入Mysql,而後輸入以下的語句:網絡

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;

FLUSH PRIVILEGES;

上面的%能夠改爲一個具體的IP地址,這樣就只容許這個IP訪問了。阿里雲

配置監聽IP

上面的配置是不夠的。Mysql默認只監聽127.0.0.1這個IP地址。因此須要更改/etc/mysql/mysql.conf.d/mysqld.cnf文件。 裏面有一個bind-address=127.0.0.01,改爲:rest

bind-address=0.0.0.0

重啓mysql: service mysql restart 經過netstat -ant |grep mysql 來查看是否監聽的IP地址變化了。code

配置防火牆

經過iptables -L -n 查看是否防火牆有限制。通常新版的ubuntu系統已經不安裝iptables模塊了。不過仍是看一眼比較好。ip

虛擬機網絡配置

通過上面的配置你就能夠經過 mysql -uroot -p -P3306 -h<mysql_host_ip>來鏈接了。可是若是你是使用虛擬機,例如阿里雲的虛擬機,那麼你還須要配置虛擬機的網絡。由於虛擬機的IP地址並非公網IP地址,而是有一個端口映射。進入雲控制檯,修改虛擬機的網絡來配置一個端口鏡像,讓虛擬機的私有IP地址+3306端口映射到公網IP地址+3306上。虛擬機

若是上述方法仍是沒法鏈接,那你須要經過telnet ipaddress 3306來看一下是否能鏈接上。table

@完

相關文章
相關標籤/搜索