MySQL ist ein von Oracle entwickeltes Open-Source-SQL-Datenbankverwaltungssystem. Der folgende Artikel stellt Ihnen hauptsächlich die Gründe und Lösungen vor, warum unter Centos7 keine Remoteverbindung möglich ist. Sie brauchen Freunde, die darauf verweisen können, schauen wir uns unten um.
Vorwort
Ich habe kürzlich bei der Arbeit festgestellt, dass ich unter dem Centos7-System keine Remoteverbindung herstellen konnte Ich habe die relevanten Informationen gefunden und sie schließlich gelöst. Nachdem ich auf das Problem gestoßen war, dass keine Remoteverbindung zur MySQL-Datenbank hergestellt werden konnte, habe ich die folgende Methode ausprobiert und das Problem schließlich gelöst. Ich fasse es also zusammen und teile es als Referenz für Freunde, die ebenfalls auf dieses Problem stoßen. Im Folgenden werde ich nicht viel sagen. Schauen wir uns die detaillierte Einführung an.
Es gibt zwei Gründe
Die Datenbank ist nicht autorisiert
Die Server-Firewall nicht offener Port 3306
1. Die Datenbank ist nicht autorisiert
Es gibt keine Autorisierung für die MySQL-Datenbank, nur Verwenden Sie einen Befehl.
mysql>GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION; //远程连接数据库的时候需要输入用户名和密码 用户名:root 密码:123456 指点ip:%代表所有Ip,此处也可以输入Ip来指定Ip 输入后使修改生效还需要下面的语句 mysql>FLUSH PRIVILEGES;
2. Die Server-Firewall öffnet Port 3306 nicht
Centos verfügt über zwei Firewalls FirewallD und iptables-Firewall
Centos7 verwendet die FirewallD-Firewall.
FirewallD ist ein Front-End-Controller für iptables, der dauerhafte Netzwerkverkehrsregeln implementiert. Es bietet Befehlszeilen- und grafische Schnittstellen und ist in den Repositorys der meisten Linux-Distributionen verfügbar. Im Vergleich zur direkten Steuerung von iptables gibt es zwei Hauptunterschiede bei der Verwendung von FirewallD:
1. FirewallD verwendet Zonen und Dienste anstelle von Kettenregeln.
2. Es verwaltet Regelsätze dynamisch und ermöglicht so die Aktualisierung von Regeln, ohne bestehende Sitzungen und Verbindungen zu zerstören.
FirewallD ist ein Wrapper für iptables, mit dem Sie iptables-Regeln einfacher verwalten können – es ist kein Ersatz für iptables. Obwohl iptables-Befehle weiterhin mit FirewallD verwendet werden können, wird empfohlen, bei Verwendung von FirewallD nur FirewallD-Befehle zu verwenden.
1. FirewallD-Firewall öffnet Port 3306
firewall-cmd --zone=public --add-port=3306/tcp --permanent
Befehlsbedeutung:
--zone #作用域 --add-port=3306/tcp #添加端口,格式为:端口/通讯协议 --permanent #永久生效,没有此参数重启后失效
Firewall neu starten
systemctl restart firewalld.service
2.iptables entwickeln den 3306-Port
/sbin/iptables -I INPUT -p tcp -dport 3306 -j ACCEPT /etc/rc.d/init.d/iptables save
Zusammenfassung
Das obige ist der detaillierte Inhalt vonDer Grund, warum die MySQL-Datenbank unter Centos7 nicht remote verbunden werden kann, und die detaillierte Lösung. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!