zoukankan      html  css  js  c++  java
  • MySQL连接报错(错误:1130)

    1. 原因

    显示这个错误是因为没有连接到该机器MySQL数据库的权限,这是在一开始安装MySQL是默认设置的。

    在数据库mysql下有一张名为`user`的表,其中的字段user下的root的值默认为localhost,也就是只允许本机(安装了这个数据库的机器)进行连接,如下图

     2. 解决办法

    将这个值修改为通配符`%`,意为所有机器均有连接访问这个数据库的权限

    2.1 CMD下修改

    mysql -u root -p "密码";
    
    use mysql;
    
    select host from user where user = `root`;-- 这个不写也可以,只是为了查看locahost的值,详见下图
    
    update mysql.user set `host` = `%` where user = `root`;-- 修改值
    
    flush privileges;-- 刷新
    
    exit; -- 退出

     我们在查看host的那一行可以看出它原本的值为localhost

    3. 原理

    Host列指定了允许用户登录所使用的IP,比如user=root Host=111.222.33.4。这里的意思就是说root用户只能通过111.222.33.4的客户端去访问。 而%是个通配符,如果Host=111.222.33.%,那么就表示只要是IP地址前缀为“192.168.1.”的客户端都可以连接。如果Host=%,表示所有IP都有连接权限。

  • 相关阅读:
    SVN服务器搭建和使用(三)
    SVN服务器搭建和使用(二)
    SVN服务器搭建和使用(一)
    mysql和oracle分页
    Windows许可证 即将过期
    Java 设计模式学习笔记1——策略模式(Duck例子)
    java 抽象类与接口
    java servlet练习测试
    windows 添加开始菜单
    visio连接线设置
  • 原文地址:https://www.cnblogs.com/YuanShiRenY/p/MySQL_Error_1130.html
Copyright © 2011-2022 走看看