在 CentOS 上修改 MySQL 端口,一般步骤如下(以 MySQL 5.7 / 8.0 为例):
常见路径:
/etc/my.cnf
或
/etc/mysql/my.cnf
vim /etc/my.cnf
在 [mysqld] 节点下添加或修改:
[mysqld]
port = 3307
(把 3307 改成你想要的端口)
systemctl restart mysqld
或(老版本):
service mysqld restart
查看是否生效:
mysql -uroot -p -e "SHOW VARIABLES LIKE 'port';"
firewall-cmd --zone=public --add-port=3307/tcp --permanent
firewall-cmd --reload
iptables -I INPUT -p tcp --dport 3307 -j ACCEPT
service iptables save
如果连接失败,可临时测试:
setenforce 0
永久允许 MySQL 非标准端口:
semanage port -a -t mysqld_port_t -p tcp 3307
mysql -h127.0.0.1 -P3307 -uroot -p
[mysqld] 而不是 [client]% 权限)datadir 和 socket如果你用的是 MariaDB 或 Docker 版 MySQL,步骤会略有不同,可以告诉我具体环境。