?
問題說明
本文說明云服務(wù)器 ECS Linux 上 Linux 無法訪問問題的一般排查步驟。
處理辦法
-
查看 Linux 操作系統(tǒng)是否已經(jīng)Linux了 MySQL
$?rpm?-qa?mysql mysql-4.1.7-4.RHEL4.1 #?說明已經(jīng)安裝了?MySQL
-
檢查Linux
檢測 MySQL?運(yùn)行狀態(tài):service?mysqld?status
-
啟動服務(wù):
可以用三種方法來啟動 MySQL: -
方法一:使用?service?命令啟動?MySQL:
service?mysqld?start
-
方法二:使用 mysqld 腳本來啟動 MySQL:
/etc/init.d/mysql?start
-
方法三:使用?safe_mysqld?實用程序啟動?MySQL?服務(wù),此方法可以使用相關(guān)參數(shù):
safe_mysqld&?//使用&表示將safe_mysqld放在后臺執(zhí)行。
-
登陸
-
修改密碼
mysqladmin?-u?root?password mysqladmin?-u?root?password?'kaishi'
這里的“密碼”為我們欲新設(shè)的密碼。系統(tǒng)會提示我們輸入舊密碼(若是 MySQL 剛安裝,則默認(rèn)密碼為空)
?
如果本機(jī)可以登陸了,但是其他機(jī)器的客戶端登陸報錯。比如:
ERROR?1130?(00000):?Host?'xxx.xxx.xxx.xxx'?is?not?allowed?to?connect?to?this?MySQ L?server
則首先查看了 iptables 的設(shè)置,確認(rèn)開放了 3306 端口:
iptables?-A?INPUT?-p?tcp?-m?tcp?--sport?3306?-j?ACCEPT iptables?-A?OUTPUT?-p?tcp?-m?tcp?--dport?3306?-j?ACCEPT service?iptables?save
?
如果還是無法訪問,則可能是 MySQL 的權(quán)限問題。則可以通過如下步驟排查:
-
在本機(jī)登錄
mysql?-h?localhost?-u?root?-pkaishi show?databases; use?mysql; select?Host,?User,?Password?from?user; +-----------------------+------+-------------------------------------------+ |?Host?|?User?|?Password?| +-----------------------+------+-------------------------------------------+ |?localhost?|?root?|?*18F54215F48E644FC4E0F05EC2D39F88D7244B1A?| |?localhost.localdomain?|?root?|?| |?localhost.localdomain?|?|?| |?localhost?|?|?| +-----------------------+------+-------------------------------------------+
可以看到如上結(jié)果,只有 localhost 才設(shè)置了訪問的權(quán)限。
-
進(jìn)入?MySQL?,創(chuàng)建一個新用戶?user?:
格式:grant 權(quán)限 on 數(shù)據(jù)庫名.表名 用戶@登錄主機(jī) identLinuxied by “用戶密碼”。grant?select,update,insert,delete?on?easyview.*?to?sillycat@192.168.10.103?identified?by?"kaishi";
-
查看結(jié)果,執(zhí)行:
use?mysql; select?host,user,password?from?user;
可以看到在user表中已有剛才創(chuàng)建的user用戶。host字段表示登錄的主機(jī),其值可以用IP,也可用主機(jī)名,將host字段的值改為%就表示在任何客戶端機(jī)器上能以userLinux到mysql服務(wù)器,建議在開發(fā)時設(shè)為%。
-
修改了權(quán)限后需要執(zhí)行如下語句生效:
update?user?set?host?=?'%'?where?user?=?'sillycat'; flush?privileges;