mysql默认端口为3306,修改需编辑配置文件中[mysqld]段的port参数并重启服务,不可仅用sql命令;需同步检查防火墙、selinux及云平台安全组设置。

MySQL 默认端口是 3306,修改端口需要调整 MySQL 的配置文件并重启服务,不能仅通过 SQL 命令更改。
确认当前 MySQL 端口
连接 MySQL 后执行以下命令查看实际监听端口:
mysql> SHOW VARIABLES LIKE 'port';同时可在操作系统中验证监听状态(Linux/macOS):
netstat -tuln | grep :3306或使用:
ss -tuln | grep :3306修改 MySQL 配置文件
找到 MySQL 的主配置文件(常见路径):
- /etc/my.cnf(Linux 全局)
- /etc/mysql/my.cnf(Debian/Ubuntu)
- /usr/local/etc/my.cnf(macOS Homebrew)
- C:\ProgramData\MySQL\MySQL Server X.X\my.ini(Windows)
在 [mysqld] 段落下添加或修改:
port = 3307⚠️ 注意:不要写成 bind-address = 127.0.0.1:3307 —— bind-address 只接受 IP,不支持带端口。
检查防火墙与 SELinux(Linux)
若新端口无法远程访问,请确认:
- 系统防火墙放行该端口(如 firewalld):firewall-cmd --add-port=3307/tcp --permanent && firewall-cmd --reload
- SELinux 允许 MySQL 绑定非标准端口:semanage port -a -t mysqld_port_t -p tcp 3307(需安装 policycoreutils-python-utils)
- 云服务器(如阿里云、腾讯云)还需在安全组中开放对应端口
重启 MySQL 服务生效
保存配置后必须重启服务:
- systemd 系统:sudo systemctl restart mysqld 或 sudo systemctl restart mysql
- macOS(Homebrew):brew services restart mysql
- Windows:net stop MySQLX.X && net start MySQLX.X(X.X 为版本号)
重启后重新执行 SHOW VARIABLES LIKE 'port'; 确认已更新。










