首先,先說明一下我用的是Vagrant虛擬機(jī)领斥,當(dāng)然和平時(shí)服務(wù)器差不了太多基本是一樣配置
Ubunut配置(無防火墻)
更改Vagrant的mysql配置
vagrant@ubuntu:mysql -u root -p //連接數(shù)據(jù)庫 默認(rèn)密碼 123456
mysql>use mysql;
mysql>select Host,user from user;
+-----------+-----------+
| Host | user |
+-----------+-----------+
| localhost | root |
| localhost | mysql.sys |
+-----------+-----------+
//然后把 root 的localhost 改為 %
//%是任何人都可以連接嫉到,如果感覺不安全,可以用防火墻攔截(Ubunut無防火墻需要下載電子安全狗)
mysql>update user set host = '%' where user = 'root';
+-----------+-----------+
| Host | user |
+-----------+-----------+
| % | root |
| localhost | mysql.sys |
+-----------+-----------+
然后我們?nèi)ミB接測試如果報(bào)錯(cuò)2003 *********** (10038)然后進(jìn)行下一步
Mysql10038錯(cuò)誤.png
線上服務(wù)器 - 阿里云ECS
如果是線上服務(wù)器月洛,記得在阿里云
ECS
控制臺->安全組
->添加3306端口
服務(wù)器安全組.png
配置Mysql文件(將bind-address = 127.0.0.1注釋)
vagrant@ubuntu:netstat -an|grep 3306 //先查看一下端口發(fā)現(xiàn)指向本地才能訪問3306:
沒改Mysql配置之前.png
vagrant@ubuntu:cd /etc/mysql/mysql.conf.d //配置文件路徑
vagrant@ubuntu:sudo vi mysqld.cnf //打開配置文件
Mysql路徑.png
配置步驟.png
vagrant@ubuntu:sudo service mysql restart //重啟mysql
vagrant@ubuntu:netstat -an|grep 3306 //先查看一下端口
修改Mysql配置文件后.png
Navicat連接成功.png
防火墻以及安全組查看3306
查看已有的iptables規(guī)則何恶,以序號顯示
iptables -L -n --line-numbers
第六條對應(yīng)的3306端口是Drop(拒接)的,所以需要手動(dòng)開啟嚼黔,輸入以下命令開啟
iptables -D INPUT 6
iptables.png
重啟Mysql或 執(zhí)行
mysql>flush privileges;
恭喜你連接成功导而,其實(shí)很簡單希望能幫到大家忱叭。