如果启用某些 MySQL 功能,则可能需要为这些功能使用的其他端口设置 SELinux TCP 端口上下文。如果 MySQL 功能使用的端口没有正确的 SELinux 上下文,这些功能可能无法正常运行。
以下部分描述了如何为 MySQL 功能设置端口上下文。通常,可以使用相同的方法为任何 MySQL 功能设置端口上下文。有关 MySQL 功能使用的端口的信息,请参阅 MySQL 端口参考。
如果启用了 SELinux,则必须为 Group Replication 通信端口设置端口上下文,该端口由
group_replication_local_address
变量定义。mysqld必须能够绑定到 Group Replication 通信端口并在那里监听。InnoDB Cluster 依赖于组复制,因此这同样适用于集群中使用的实例。要查看 MySQL 当前使用的端口,请发出:
semanage port -l | grep mysqld
假设 Group Replication 通信端口为 33061,通过发出以下命令设置端口上下文:
semanage port -a -t mysqld_port_t -p tcp 33061
如果启用了 SELinux,则必须为 X Plugin 使用的通信端口设置端口上下文,该端口由
mysqlx_port
变量定义。
mysqld必须能够绑定到 X 插件通信端口并在那里收听。
假设 X 插件通信端口为 33060,通过发出以下命令设置端口上下文:
semanage port -a -t mysqld_port_t -p tcp 33060