在阿里云服務(wù)器上(centos7)下載好了mysql并安裝上去刺下,但是暫未設(shè)置賬號密碼已烤,遠程登陸mysql并不可行爱咬。
這里有兩個問題需要我們?nèi)ソ鉀Q:設(shè)置賬號密碼驰唬;遠程登陸mysql
(一)設(shè)置賬號密碼
(1)登陸遠程服務(wù)器
(2)查看mysql版本,并用root賬號登陸到mysql中
mysql -v
上面這個截圖是我已經(jīng)進去mysql數(shù)據(jù)庫中了芯丧,如果沒有到這個界面的芍阎,我們可以使用mysql -u root -p
輸入密碼并進入到mysql中。
(3) 創(chuàng)建test賬號缨恒,并設(shè)置密碼pwd123456
使用的mysql語句為:
grant all on *.* to test@'127.0.0.1' identified by "pwd123456";
當(dāng)輸出為:
就是創(chuàng)建成功了能曾。
(4)切換到mysql 數(shù)據(jù)庫,給test設(shè)置訪問權(quán)限肿轨。
mysql語句:use mysql;
(5)修改test的權(quán)限寿冕。
mysql語句:update user set host = '%' where user = 'test';
(6)查看user表是否修改成功
mysql語句:select user,host from user where user="test";
%
說明修改成功,任何ip都可以進行訪問
(7) 更新數(shù)據(jù)庫:
mysql語句:flush privileges;
到這里我們就把mysql的賬號密碼給添加上去了椒袍,如果要添加多個賬號跟密碼驼唱,重復(fù)操作上面的步驟即可。下面我們需要實現(xiàn)遠程登陸驹暑。
(二)實現(xiàn)遠程登陸
關(guān)于本機能登陸mysql玫恳,但是遠程登陸不上去辨赐,往往是防火墻未關(guān)閉或者3306端口未開放的情況下
(1)阿里云的安全組策略里查看一下是否進行了3306端口的遠程訪問
安全組策略的問題:我們可以參考前幾日寫過的這篇文章:
新買阿里云linux服務(wù)器如何設(shè)置賬號密碼xshell遠程登陸
在這里我們只需多打開一個端口:3306端口即可
(2) 關(guān)閉防火墻,開放3306端口
CentOS 7.0默認(rèn)使用的是firewall作為防火墻京办,這里改為iptables防火墻掀序。
1、關(guān)閉firewall:
systemctl stop firewalld.service
systemctl disable firewalld.service
systemctl mask firewalld.service
2惭婿、安裝iptables防火墻
yum install iptables-services -y
3.啟動設(shè)置防火墻
systemctl enable iptables
systemctl start iptables
4.查看防火墻狀態(tài)
systemctl status iptables
5 編輯防火墻不恭,增加端口
vi /etc/sysconfig/iptables #編輯防火墻配置文件
-A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT
:wq! #保存退出
3.重啟配置,重啟系統(tǒng)
systemctl restart iptables.service #重啟防火墻使配置生效
systemctl enable iptables.service #設(shè)置防火墻開機啟動
注意:以上操作如果出現(xiàn)xxx command not found 的情況财饥,我們只要sudo yum install xxx 就可以了换吧,然后會自動給下載的。
4 調(diào)試3306端口是否能登陸上去
使用命令:
[admin@izbp11722iq94py8qx691sz ~]$ sudo iptables -L -n
在win下使用本地mysql工具Navicat 測試一下
這樣我們就實現(xiàn)了遠程登陸mysql數(shù)據(jù)庫钥星。