MySQL 連接埠參考  /  簡介

1 簡介

MySQL 使用的連接埠數量取決於啟用的功能、使用的元件、應用程式的連線方式,以及您環境的其他方面。

從安全性的角度來看,應僅開啟允許系統元件通訊所需的連接埠。在管理連接埠時,務必遵循最小權限原則,該原則要求使用者、程序、程式和其他系統元件只能存取其合法目的所需的資訊和資源。

連接埠存取管理的方式取決於您環境的不同方面,例如作業系統功能、防火牆、安全工具、虛擬私人網路 (VPN) 的使用等等。某些 MySQL 安裝套件會協助設定核心 MySQL 連接埠的存取權限。例如,Windows 的 MySQL 安裝程式伺服器套件會將存取規則新增至 Windows 防火牆,而 Linux 套件的 MySQL 會將存取規則新增至 SELinux 或 AppArmor。但是,MySQL 不會協助處理較不常見、選用或非 MySQL 產品的連接埠。在這些情況下,必須使用如下 SELinux 指令手動開啟連接埠

$> semanage port -a -t mysqld_port_t -p tcp <port_open_to_mysqld>

有關設定 MySQL 的 SELinux 連接埠內容的更多資訊,請參閱SELinux TCP 連接埠內容

某些 MySQL 功能使用的 TCP 連接埠會落在 Linux 系統允許的本地連接埠範圍內 (32768 - 61000)。例如,預設的 MySQL X 通訊協定連接埠為 33060,而預設的 MySQL 管理連線連接埠為 33062。為了避免與其他應用程式發生連接埠衝突,請考慮設定 ip_local_port_range 參數來限制可用於自動連接埠指派的連接埠範圍,或設定 ip_local_reserved_ports 參數來保留 MySQL 使用的連接埠。若要檢查目前的 ip_local_port_rangeip_local_reserved_ports 設定

$ cat /proc/sys/net/ipv4/ip_local_port_range
$ cat /proc/sys/net/ipv4/ip_local_reserved_ports

有關 ip_local_port_rangeip_local_reserved_ports 設定指示,請參閱您的發行版本文件。