CentOS系統安裝好MySQL后,默認情況下不支持用戶通過非本機連接上數據庫服務器,下面是解決方法:
1、在控制台執行 mysql -u root -p mysql,系統提示輸入數據庫root用戶的密碼,輸入完成后即進入mysql控制台,這個命令的第一個mysql是執行命令,第二個mysql是系統數據名稱,不一樣的。
2、在mysql控制台執行 GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'MyPassword' WITH GRANT OPTION;
FLUSH PRIVILEGES;
3、在mysql控制台執行命令中的 'root'@'%' 可以這樣理解: root是用戶名,%是主機名或IP地址,這里的%代表任意主機或IP地址,你也可替換成任意其它用戶名或指定唯一的IP地址;'MyPassword'是給授權用戶指定的登錄數據庫的密碼;另外需要說明一點的是我這里的都是授權所有權限,可以指定部分權限,GRANT具體操作詳情見:http://dev.mysql.com/doc/refman/5.1/en/grant.html
4、不放心的話可以在mysql控制台執行 select host, user from user; 檢查一下用戶表里的內容
到此還是在客戶端還是連接不上----我的沒有遇到,可以連接。
此時檢查下防火牆是否開啟:
/etc/init.d/iptables status
會得到一系列信息,說明防火牆開着。則關閉:
/etc/init.d/iptables stop
永久關閉::----可以使用一種配置運行mysql:3306端口暴露的配置,而不是把整個防火牆都關閉
chkconfig --level 35 iptables off
再次連接,可以了
另外,bz2的格式的解壓也記錄一下
bunzip2 filename.bz2
這樣得到一個 filename的文件,原先文件消失了。
----------------------------------------
----------------------------------------
補充:
1.chmod -R 0777 * (分配所有的權限)
chmod -R a+r * 讀的權限
ps aux |grep mysql (查看mysql狀態)
netstat -ano
lsof -i:3306 (查看端口號下的命令)
service iptables stop(關閉防火牆)