MySQL 8.4 版本注意事項
如果您啟用某些 MySQL 功能,您可能需要為這些功能使用的其他連接埠設定 SELinux TCP 連接埠內容。如果 MySQL 功能使用的連接埠沒有正確的 SELinux 內容,這些功能可能無法正常運作。
以下章節說明如何設定 MySQL 功能的連接埠內容。通常,可以使用相同的方法來設定任何 MySQL 功能的連接埠內容。如需有關 MySQL 功能使用的連接埠資訊,請參閱MySQL 連接埠參考。
對於 MySQL 8.4,啟用 mysql_connect_any
並非必要或建議。
setsebool -P mysql_connect_any=ON
如果已啟用 SELinux,您必須為群組複製通訊連接埠設定連接埠內容,該連接埠由 group_replication_local_address
變數定義。mysqld 必須能夠繫結至群組複製通訊連接埠並在那裡接聽。InnoDB Cluster 依賴群組複製,因此這同樣適用於叢集中使用的執行個體。若要檢視 MySQL 目前使用的連接埠,請發出
semanage port -l | grep mysqld
假設群組複製通訊連接埠為 33061,請發出以下指令設定連接埠內容
semanage port -a -t mysqld_port_t -p tcp 33061
如果已啟用 SELinux,您必須為 X 外掛程式使用的通訊連接埠設定連接埠內容,該連接埠由 mysqlx_port
變數定義。mysqld 必須能夠繫結至 X 外掛程式通訊連接埠並在那裡接聽。
假設 X 外掛程式通訊連接埠為 33060,請發出以下指令設定連接埠內容
semanage port -a -t mysqld_port_t -p tcp 33060
如果已啟用 SELinux,您必須為 MySQL Router 使用的通訊連接埠設定連接埠內容。假設 MySQL Router 使用的其他通訊連接埠為預設的 6446、6447、64460 和 64470,請在每個執行個體上發出以下指令設定連接埠內容
semanage port -a -t mysqld_port_t -p tcp 6446
semanage port -a -t mysqld_port_t -p tcp 6447
semanage port -a -t mysqld_port_t -p tcp 64460
semanage port -a -t mysqld_port_t -p tcp 64470