Can't connect to MySQL server on localhost (10061)這個就屬於下面要說的情況
啟動服務
systemctl start mariadb.service
systemctl enable mariadb.service
systemctl stop mariadb.service
1.首先開啟mysql權限
設置ROOT密碼
mysqladmin -u root password '888888'
mysql -u root -p
use mysql
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'mysql' WITH GRANT OPTION;
flush privileges;
第一句中"%"表示任何主機都可以遠程登錄到該服務器上訪問。如果要限制只有某台機器可以訪問,將其換成相應的IP即可,如:
GRANT ALL PRIVILEGES ON *.* TO root@"172.168.193.25" IDENTIFIED BY "root";
select * from user where user='root';
查看是否有%這條記錄
2.開啟3306端口及常用的其它端口
查看是否有這個文件/etc/sysconfig/iptables,如果沒有
iptables -P OUTPUT ACCEPT
service iptables save 進行保存,默認就保存到了/etc/sysconfig目錄下的iptables文件中
iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT #允許3306數據庫端口通過防火牆
service iptables save
cat /etc/sysconfig/iptables有3306這條信息
service iptables restart就ok咯
其它常用端口:
iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT #允許80web端口通過防火牆
iptables -A INPUT -p tcp --dport 3306 -j ACCEPT
iptables -A INPUT -p tcp --dport 110 -j ACCEPT #email
iptables -A INPUT -p tcp --dport 25-j ACCEPT #email
iptables -A INPUT -p tcp --dport 20-j ACCEPT #ftp
iptables -A INPUT -p tcp --dport 21-j ACCEPT #ftp
iptables -A INPUT -p icmp -j ACCEPT #ping
iptables -A INPUT -p udp --dport 53 -j ACCEPT #DNS
3.查看防火牆是否開啟:
service iptables status
active表示開啟,inactive表示關閉
firewall-cmd --state
norunning
4.關於防火牆的命令
重啟后永久性生效:
開啟:chkconfig iptables on
關閉:chkconfig iptables off
即時生效,重啟后失效:
開啟:service iptables start
關閉:
service iptables stop
重啟:service iptables restart
保存配置:service iptables save
或者/etc/rc.d/init.d/iptables save
#設置防火牆開機啟動
systemctl enable iptables.service
禁止防火牆在系統啟動時啟動
/sbin/chkconfig --level 2345 iptables off
5.刪除iptables規則
查看當前規則
iptables -L -n
iptables -L -n --line-number
iptables -D INPUT 3