Propósito en segundo plano: quiero restringir la conexión entrante al servidor MYSQL solo para un host específico estableciendo reglas de entrada del firewall de Windows.
El puerto del servidor MYSQL está abierto en 3306.
Sin embargo, cuando abro la configuración del firewall, puedo ver que se abren dos puertos en 3306 y 33060 de la siguiente manera:
¿qué es eso?
Respuesta1
Los clientes mysql utilizan este puerto de conexión para conectarse al servidor mysql. Sin embargo, a diferencia del puerto 3306, esta conexión utiliza el llamado protocolo x. Este puerto es compatible con clientes como Mysql-Shell o la comunidad Mysql-Connectors, mientras que mysqlclient y herramientas como mysqldump utilizan el puerto clásico. El protocolo x es una interfaz de consulta MySQL alternativa que incluye una API alternativa llamada X-DevAPI. Le permite acceder a los datos en json y también es compatible con SQL. Sin embargo, debe permitirlo en la configuración de su firewall a menos que esté desactivando este puerto/protocolo en su servidor mysql. Para resumirlo: el protocolo x y el puerto 33060 son opcionales y no necesarios.
Referencia para información general sobre los puertos mysql: https://dev.mysql.com/doc/mysql-port-reference/en/mysql-ports-reference-tables.html
Referencia sobre el Protocolo X: https://www.percona.com/blog/2019/01/07/understanding-mysql-x-all-flavors/
Respuesta2
La lista de puertos utilizados por MySQL está disponible aquí:https://dev.mysql.com/doc/mysql-port-reference/en/mysql-ports-reference-tables.html
Para un uso típico, solo necesita el puerto 3306. Verifique los archivos de configuración de su servidor para ver qué puertos está escuchando.