Hintergrundzweck: Ich möchte die eingehende Verbindung zum MySQL-Server nur für einen bestimmten Host beschränken, indem ich eingehende Regeln der Windows-Firewall festlege.
Der MySQL-Server-Port 3306 ist geöffnet.
Wenn ich jedoch die Firewall-Einstellungen öffne, sehe ich, dass zwei Ports auf 3306 und 33060 wie folgt geöffnet sind:
Was ist das?
Antwort1
Dieser Verbindungsport wird von den MySQL-Clients verwendet, um eine Verbindung zum MySQL-Server herzustellen. Im Unterschied zu Port 3306 verwendet diese Verbindung jedoch das sogenannte X-Protokoll. Dieser Port wird von Clients wie Mysql-Shell oder Community-Mysql-Connectors unterstützt, während der MySQL-Client und Tools wie mysqldump den klassischen Port verwenden. Das X-Protokoll ist eine alternative MySQL-Abfrageschnittstelle, die eine alternative API namens X-DevAPI enthält. Sie ermöglicht Ihnen den Zugriff auf die Daten in JSON und unterstützt auch SQL. Sie müssen es jedoch in Ihren Firewall-Einstellungen zulassen, es sei denn, Sie deaktivieren diesen Port/dieses Protokoll auf Ihrem MySQL-Server. Um es für Sie zusammenzufassen: Das X-Protokoll und der Port 33060 sind optional und nicht erforderlich.
Referenz für allgemeine Informationen zu MySQL-Ports: https://dev.mysql.com/doc/mysql-port-reference/en/mysql-ports-reference-tables.html
Referenz zum X-Protokoll: https://www.percona.com/blog/2019/01/07/understanding-mysql-x-all-flavors/
Antwort2
Die Liste der von MySQL verwendeten Ports ist hier verfügbar:https://dev.mysql.com/doc/mysql-port-reference/en/mysql-ports-reference-tables.html
Für die typische Verwendung benötigen Sie nur Port 3306. Überprüfen Sie Ihre Serverkonfigurationsdateien, um zu sehen, auf welchen Ports er lauscht.