mysql.user表中Host为%的含义

Host列指定了容许用户登陆所使用的IP,好比user=root Host=192.168.1.1。这里的意思就是说root用户只能经过192.168.1.1的客户端去访问。mysql

  而%是个通配符,若是Host=192.168.1.%,那么就表示只要是IP地址前缀为“192.168.1.”的客户端均可以链接。若是Host=%,表示全部IP都有链接权限。、sql

  这也就是为何在开启远程链接的时候,大部分人都直接把Host改为%的缘故,为了省事。数据库


mysql的%虽然表示是任何主机,可是它只是针对于经过TCP/IP链接过来的主机。相似于mysql -h 172.16.0.3这种。登录

另外还有两种:权限

一、localhost数据

二、127.0.0.1客户端

%不能替代上面两种,也就是说,你在本机用mysql -hlocalhost(等同于mysql 不指定-h),mysql -h127.0.0.1方式链接数据库,MySQL的权限验证模块都会采用不一样的方式。远程

相关文章
相关标签/搜索