MacPortsだと全てのバージョンのMySQLを実行できます。
/opt/local/etc/mysql8/macports-default.cnf
で skip-networking
が設定されているからです。
これは、TCP/IPによる通信ではなく、UNIXドメインソケット(ファイルシステムを使ったプロセス間通信)を利用しているからです。
これは、.sockファイルのパスを変えることで、複数バージョンの起動を可能にする手法です。
TCP/IPでは待ち受けポート(リスニングポート)番号は重複できません。(当然!)
逆に言うと、ポート番号を変えれば複数バージョンの起動も可能ですし、同一バージョンを複数起動する事も可能です!