目录导航
一、检查MySQL服务状态
首先通过systemctl status mysqld
命令确认MySQL服务是否正常运行。若服务未启动,需执行systemctl start mysqld
启动服务,并通过journalctl -u mysqld
查看错误日志。建议设置开机自启动:systemctl enable mysqld
。
二、配置MySQL远程连接
修改MySQL配置文件(通常位于/etc/mysql/my.cnf
):
[mysqld]
bind-address = 0.0.0.0
该配置允许接受所有IP连接请求。修改后需重启服务:systemctl restart mysqld
。
三、处理用户权限问题
执行以下SQL语句创建远程访问用户:
CREATE USER 'username'@'%' IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON *.* TO 'username'@'%';
FLUSH PRIVILEGES;
通过SELECT host,user FROM mysql.user
验证权限设置。
四、检查防火墙与端口设置
- 开放3306端口:
sudo ufw allow 3306/tcp
- 验证端口连通性:
telnet 虚拟机IP 3306
- 检查iptables规则:
iptables -L -n | grep 3306
五、调整虚拟机网络配置
模式 | 特点 |
---|---|
NAT | 需要配置端口转发规则 |
桥接 | 虚拟机与主机处于同一局域网 |
仅主机 | 仅允许主机-虚拟机通信 |
建议使用桥接模式并检查IP地址是否在同一网段。
通过分步检查服务状态、网络配置、权限设置和防火墙规则,可系统性解决90%的虚拟主机连接MySQL问题。建议按照「本地连接测试→远程连接测试→跨虚拟机连接测试」的顺序进行验证。
本文由阿里云优惠网发布。发布者:编辑员。禁止采集与转载行为,违者必究。出处:https://aliyunyh.com/589742.html
其原创性以及文中表达的观点和判断不代表本网站。如有问题,请联系客服处理。