执行use mysql; 再执行show tables;可看到mysql中的所有表格
执行desc user;可以看到user的表结构
可以看出host是user表中的一列,执行select host,user,password from user;可查出这几列的具体内容
执行update user set host='%' where user='root';可以添加一个host为%,user为root的记录
执行select host from user where user='root'可查询到以下结果
Host列指定了允许用户登录所使用的IP,比如user=root Host=192.168.1.1。这里的意思就是说root用户只能通过192.168.1.1的客户端去访问。
而%是个通配符,如果Host=192.168.1.%,那么就表示只要是IP地址前缀为“192.168.1.”的客户端都可以连接。如果Host=%,表示所有IP都有连接权限。、
这也就是为什么在开启远程连接的时候,大部分人都直接把Host改成%的缘故,为了省事。