要让MySQL支持远程访问,需修改bind-address为0.0.0.0以监听所有IP,重启MySQL服务;再通过GRANT命令授权用户从%或指定IP远程登录,并执行FLUSH PRIVILEGES刷新权限;最后确保防火墙或云安全组开放3306端口,方可成功远程连接。

要让MySQL支持远程访问,不能只靠开启网络连接,还需要正确配置用户权限和服务器设置。默认情况下,MySQL只允许本地访问(localhost),需要手动调整配置才能让外部主机连接。
修改MySQL绑定地址
MySQL默认只监听本地回环地址(127.0.0.1),需改为监听所有IP或指定公网IP:
找到MySQL配置文件:my.cnf(Linux通常在/etc/mysql/my.cnf或/etc/my.cnf,Windows在安装目录下的my.ini)找到[mysqld]部分,修改或添加:
bind-address = 0.0.0.0
这表示监听所有网络接口。若只想允许特定IP访问,可填写该IP地址。
重启MySQL服务
修改配置后必须重启服务使更改生效:
Linux系统执行:sudo systemctl restart mysql 或 sudo service mysql restartWindows系统可在服务管理器中重启MySQL服务
创建或修改用户远程访问权限
登录MySQL(使用root或其他有权限账户):
mysql -u root -p
进入后执行以下命令授权远程访问:
允许特定用户从任意主机访问:
GRANT ALL PRIVILEGES ON *.* TO ‘用户名’@’%’ IDENTIFIED BY ‘密码’ WITH GRANT OPTION;
无限画
千库网旗下AI绘画创作平台
467 查看详情
允许用户从指定IP访问(更安全):
GRANT ALL PRIVILEGES ON *.* TO ‘用户名’@’192.168.1.100’ IDENTIFIED BY ‘密码’;
刷新权限使变更立即生效:
FLUSH PRIVILEGES;
注意:如果用户已存在但只能本地登录,需检查是否已有’用户名’@’localhost’记录,必要时删除或更新对应权限。
防火墙与网络设置
确保服务器防火墙放行MySQL端口(默认3306):
Linux使用ufw:sudo ufw allow 3306使用iptables:sudo iptables -A INPUT -p tcp –dport 3306 -j ACCEPT云服务器(如阿里云、AWS)还需配置安全组规则,开放3306端口入站流量
测试远程连接可用客户端工具(如Navicat、MySQL Workbench)或命令行:
mysql -h 服务器IP -u 用户名 -p
基本上就这些。只要配置文件改了绑定地址,用户权限开了远程主机访问,防火墙也放行了端口,远程连接就能通。关键是每一步都不能漏,尤其是权限和防火墙,最容易出问题。
以上就是mysql如何配置远程访问权限_mysql远程访问权限配置的详细内容,更多请关注创想鸟其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/874193.html
微信扫一扫
支付宝扫一扫