当前位置: 首页 > news >正文

MySQL访问权限授权问题

遇到错误 1130 - Host ‘192.168.56.1’ is not allowed to connect,说明 MySQL 服务器拒绝了来自 IP 地址 192.168.56.1 的访问请求。以下是完整的解决方案:


问题原因

MySQL 默认只允许 本地连接(localhost),如果尝试从其他主机或 IP(如虚拟机、远程服务器)连接,需手动授权。


解决方案

1. 登录 MySQL 并修改权限

需在 MySQL 服务器本地执行以下步骤:

  1. 以 root 身份登录 MySQL(在服务器本机操作):

    mysql -u root -p
    
  2. 进入 mysql 数据库

    USE mysql;
    
  3. 查看当前 root 用户的权限

    SELECT Host, User FROM user WHERE User = 'root';
    

    在这里插入图片描述

    • 如果结果中 Host 列只有 localhost,则需要添加新权限。
  4. 允许指定 IP 访问(例如 192.168.56.1):

    -- 方法1:直接授权(MySQL 5.7+)
    CREATE USER 'root'@'192.168.56.1' IDENTIFIED BY '你的密码';
    GRANT ALL PRIVILEGES ON *.* TO 'root'@'192.168.56.1' WITH GRANT OPTION;-- 方法2:更新 user 表(通用)
    UPDATE user SET Host = '192.168.56.1' WHERE User = 'root' AND Host = 'localhost';
    
  5. 刷新权限

    FLUSH PRIVILEGES;
    EXIT;
    

2. 检查 MySQL 绑定地址

确保 MySQL 监听所有网络接口或指定 IP:

  1. 打开 MySQL 配置文件 my.ini(默认路径:C:\ProgramData\MySQL\MySQL Server X.X\my.ini)。
  2. 找到 [mysqld] 部分,修改或添加:
    bind-address = 0.0.0.0  # 允许所有 IP 连接(或指定 192.168.56.1)
    
  3. 重启 MySQL 服务:
    net stop MySQL
    net start MySQL
    

3. 测试连接

从客户端机器(IP 为 192.168.56.1)执行:

mysql -u root -p -h <MySQL服务器IP> -P 3306

其他可能性

场景解决方法
授权所有 IP 访问Host 改为 %(不推荐,存在安全风险)
防火墙拦截开放服务器 3306 端口(参考 Windows 防火墙放行端口教程)
使用 SSH 或 VPN 隧道通过加密通道连接 MySQL(更安全)

安全建议

  • 避免使用 % 允许所有 IP 访问。
  • 建议通过 SSH 隧道VPN 连接 MySQL。
  • 使用非 root 用户并限制权限(如只读或指定数据库)。

如果仍无法解决,请提供以下信息:

  1. SELECT Host, User FROM mysql.user; 的输出。
  2. 服务器和客户端的 IP 配置。
  3. 是否跨虚拟机或物理网络连接(如 VirtualBox、VMware)。

相关文章:

  • 二分查找、分块查找、冒泡排序、选择排序、插入排序、快速排序
  • SPL 量化 序言
  • 【FFmpeg从入门到精通】第四章-FFmpeg转码
  • 性能比拼: Nginx vs Caddy
  • 乾元通渠道商中标舟山市自然灾害应急能力提升工程基层防灾项目
  • VTK知识学习(53)- 交互与Widget(四)
  • Kubernetes 创建 Jenkins 实现 CICD 配置指南
  • 5.2.1 CallerMemberName的使用
  • 02-HTML结构
  • 在线查看【免费】vsd, vsdx/wmf, emf /psd, eps/pdf ,ofd, rtf/xmind/bpmn/eml/epub文件格式网
  • 驱动开发硬核特训 · Day 16:字符设备驱动模型与实战注册流程
  • 基于STC89C52RC和8X8点阵屏、独立按键的匹配消除类小游戏
  • unity3d实现物体闪烁
  • Discuz论坛网站忘记管理员密码进不去管理中心怎么办?怎么改管理员密码?
  • 45.[前端开发-JavaScript高级]Day10-迭代器-生成器
  • Git创建空分支并推送到远程仓库
  • 市场分析 3 mysql (槽)
  • YOLO11改进,尺度动态损失函数Scale-based Dynamic Loss,减少标签不准确对损失函数稳定性的影响
  • 【网络安全】OWASP 十大漏洞
  • 蓝桥杯2024省A.成绩统计
  • 经济日报刊文谈外卖平台仍试图凭补贴制造超低价:苦练内功摆脱“内卷式”竞争
  • 青海玉树州杂多县发生4.6级地震,震源深度10千米
  • 闲置书换蔬菜,浙江嘉善启动全民阅读系列活动
  • 儿童阅读空间、残疾人友好书店……上海黄浦如何打造城市书房
  • 寒武纪一季度营收猛增42倍,净利3.55亿元,连续两个季度盈利
  • 2025“上海之夏”向全球邀约,首批城市定制活动集中亮相