确定MySQL服务器的IP地址是建立远程连接的前提。根据服务器部署环境的不同,可以通过以下方式获取:

- 本地服务器:在服务器主机上执行
ipconfig(Windows)或ifconfig(Linux/macOS)命令,查看IPv4地址 - 云服务器:登录云服务商控制台,在实例详情中查看公网IP和内网IP
- 通过MySQL命令查询:连接MySQL后执行
SELECT @@hostname;查看主机名,再通过域名解析获取IP
验证网络连通性与端口状态
获取IP地址后,需确认服务器网络可达且MySQL服务正在监听:
- 使用
ping IP地址测试基础网络连通性 - 通过
telnet IP地址 3306或nc -zv IP地址 3306检查MySQL默认端口(3306)是否开放 - 若端口不通,可能是防火墙拦截或MySQL未正确配置监听地址
配置MySQL用户远程访问权限
MySQL默认限制用户仅能本地连接,需专门授权远程访问:
注意:授权时应遵循最小权限原则,仅允许来自特定IP的访问,避免使用’%’开放所有主机
-
创建专用于远程连接的用户
CREATE USER 'remote_user'@'客户端IP' IDENTIFIED BY '强密码';
授予必要权限(根据实际需要调整)
GRANT SELECT, INSERT, UPDATE ON 数据库名.* TO 'remote_user'@'客户端IP';
刷新权限使设置生效
FLUSH PRIVILEGES;
修改MySQL绑定地址配置
MySQL默认只绑定127.0.0.1,需调整配置监听所有网络接口:
- 找到MySQL配置文件(Linux通常为
/etc/mysql/my.cnf或/etc/my.cnf) - 在
[mysqld]段添加或修改:bind-address = 0.0.0.0 - 重启MySQL服务:
systemctl restart mysql
配置服务器防火墙规则
系统防火墙需允许MySQL端口的入站连接:
| 系统 | 操作命令 | 说明 |
|---|---|---|
| Linux (iptables) | iptables -A INPUT -p tcp --dport 3306 -j ACCEPT |
临时规则,重启后失效 |
| Linux (firewalld) | firewall-cmd --permanent --add-port=3306/tcp |
永久规则 |
| Windows | 通过”高级安全Windows防火墙”添加入站规则 | 图形界面操作 |
测试远程连接
完成上述配置后,从客户端测试连接:
mysql -h 服务器IP -u remote_user -p
连接成功后,建议立即执行基本SQL操作验证权限设置是否正确。
安全增强措施与故障排查
开启远程连接后,应加强安全防护:
- 修改默认端口:减少被自动化工具扫描的风险
- 启用SSL加密:防止数据在传输过程中被窃听
- 设置失败登录锁定:防范暴力破解攻击
- 定期审计用户权限:及时回收不必要的访问权限
常见连接问题排查:检查防火墙设置、确认用户主机限制、验证MySQL服务状态、排查网络中间设备拦截等。
内容均以整理官方公开资料,价格可能随活动调整,请以购买页面显示为准,如涉侵权,请联系客服处理。
本文由星速云发布。发布者:星速云。禁止采集与转载行为,违者必究。出处:https://www.67wa.com/77301.html