CentOS 7.9下MariaDB 10.6企业版远程访问问题求助
MariaDB 10.6 远程连接问题排查方案
1. 修正MariaDB绑定地址配置
- 打开MariaDB主配置文件(通常是
/etc/my.cnf.d/server.cnf或/etc/my.cnf),找到[mysqld]段落:- 找到
bind-address参数,若值为127.0.0.1,说明仅允许本地连接,改为0.0.0.0(允许所有IP访问)或Web服务器的公网IP - 重启服务生效:
systemctl restart mariadb
- 找到
2. 调整数据库用户访问权限
- 本地登录MariaDB:
mysql -u root -p - 查看现有用户的访问范围:
SELECT user, host FROM mysql.user;- 如果目标WordPress数据库用户的
host列是localhost/127.0.0.1,仅能本地访问,执行以下命令修改:GRANT ALL PRIVILEGES ON 你的WordPress数据库名.* TO '数据库用户名'@'%' IDENTIFIED BY '数据库密码';(替换实际参数)- 刷新权限:
FLUSH PRIVILEGES;
- 如果目标WordPress数据库用户的
3. 开放系统防火墙端口
CentOS 7.9默认用firewalld,执行以下操作:
- 临时开放3306端口:
firewall-cmd --add-port=3306/tcp - 永久开放(重启后生效):
firewall-cmd --add-port=3306/tcp --permanent - 重载防火墙规则:
firewall-cmd --reload
如果用iptables,执行: iptables -A INPUT -p tcp --dport 3306 -j ACCEPT- 保存规则:
service iptables save
4. 检查云服务器安全组(云主机场景)
- 登录云服务商控制台,找到对应数据库服务器的安全组,确保入方向规则允许TCP 3306端口访问,来源可设置为Web服务器的公网IP(更安全)或
0.0.0.0/0(仅测试用)
5. 测试端口连通性
在Web服务器上执行以下命令验证网络是否通畅:
telnet 数据库公网IP 3306nc -zv 数据库公网IP 3306- 若连接失败,优先排查防火墙/安全组;若能连通但MariaDB拒绝,回到用户权限或绑定地址配置
6. 排查服务状态与日志
- 确认MariaDB服务正常运行:
systemctl status mariadb - 查看错误日志定位具体问题:
tail -n 20 /var/log/mariadb/mariadb.log,日志里会明确提示是权限问题、绑定失败还是其他错误
内容的提问来源于stack exchange,提问作者Tamil Selvan
相关产品推荐
相关产品推荐

