ポート3306に加えて、MySQLサーバポートのポート33060とは何ですか?

ポート3306に加えて、MySQLサーバポートのポート33060とは何ですか?

背景目的: Windows ファイアウォールの受信ルールを設定して、MYSQL サーバーへの受信接続を特定のホストのみに制限します。

MYSQL サーバー ポートは 3306 で開いています。

ただし、ファイアウォール設定を開くと、次のように 3306 と 33060 の 2 つのポートが開いていることがわかります。

ここに画像の説明を入力してください

それは何ですか?

答え1

この接続ポートは、mysql クライアントが mysql サーバーに接続するために使用します。ただし、ポート 3306 とは異なります。これらの接続では、いわゆる x プロトコルが使用されます。このポートは、Mysql-Shell やコミュニティの Mysql-Connectors などのクライアントによってサポートされていますが、mysqlclient や mysqldump などのツールは従来のポートを使用しています。x プロトコルは、X-DevAPI と呼ばれる代替 API を含む代替の mysql クエリ インターフェイスです。これにより、json のデータにアクセスでき、SQL もサポートされます。ただし、mysql サーバーでこのポート/プロトコルを無効にしない限り、ファイアウォール設定で許可する必要があります。まとめると、x プロトコルとポート 33060 はオプションであり、必須ではありません。

mysql ポートに関する一般情報のリファレンス: https://dev.mysql.com/doc/mysql-port-reference/en/mysql-ports-reference-tables.html

X プロトコルに関するリファレンス: https://www.percona.com/blog/2019/01/07/understanding-mysql-x-all-flavors/

答え2

MySQL で使用されるポートのリストは、次の場所で確認できます。https://dev.mysql.com/doc/mysql-port-reference/en/mysql-ports-reference-tables.html

通常の使用では、ポート 3306 のみが必要です。サーバー構成ファイルをチェックして、どのポートをリッスンしているかを確認してください。

関連情報