1、判斷ubuntu是否開啓防火牆mysql
sudo ufw status
開放防火牆3306端口sql
sudo ufw allow 3306
2、查看3306端口是否打開數據庫
注意:紅色框框表示3306綁定的ip地址–>未修改前爲:127.0.0.1:3306–>即mysql默認綁定localhost,遠程訪問不了
*若是是綁定了127.0.0.1則繼續看第三步,不然請跳過第三步ubuntu
3、修改mysql配置文件,將bind-address = 127.0.0.1註釋,開放全部鏈接vim
sudo vim /etc/mysql/mysql.conf.d/mysqld.cnf
重啓ubuntu,再次查看3306端口狀態,同第二步bash
4、經過telnet嘗試鏈接mysql測試
telnet your-remote-ip-address 3306
若是不能連通,繼續下一步ui
5、將root用戶受權給全部鏈接
step1:進入mysql
step2:
法一>改表法:進入mysql數據庫,查看裏面user表,搜索User=’root’的記錄
注:此處爲修改後的記錄
修改Host=’localhost’的記錄:spa
mysql> UPDATE user SET Host = ‘%’ WHERE User = ‘root’ AND Host=’localhost’;
使修改生效:code
mysql> FLUSH PRIVILEGES;
法二>受權法:
例子:容許root用戶使用密碼password從任何主機鏈接到mysql:
mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'password' WITH GRANT OPTION;
使修改生效:
mysql> FLUSH PRIVILEGES;
最後,可再經過第四步進行測試驗證可否遠程鏈接上mysql~