Heim >Datenbank >MySQL-Tutorial >连接MYSQL时,主机名为localhost和127.0.0.1的区别_MySQL

连接MYSQL时,主机名为localhost和127.0.0.1的区别_MySQL

WBOY
WBOYOriginal
2016-05-27 14:12:371512Durchsuche

bitsCN.com

如果仔细查看MYSQL的权限表,会发现存在主机名为 localhost 的记录,也存在主机名为 127.0.0.1 的记录,那这两着分别在什么时候会用到呢?

使用 /usr/local/mysql/bin/mysql -u root -p访问MYSQL服务器的时候,如果使用了 -h 参数,mysql 就会通过 TCP/IP 的方式去连接服务器;如果没有 -h 参数,默认会使用 UNIX socket 方式。

如果通过 TCP/IP 方式进来的连接,MYSQL服务器接收到的来源主机是 127.0.0.1;如果是 UNIX socket 方式,MYSQL服务器接收到的来源主机是 localhost。

如果MYSQL服务器开启了 skip_name_resolve,MYSQL服务器就不会把接收到的 IP 地址转化为域名,所以前者的current_user就是 root@'127.0.0.1',后者的current_user就是 root@'localhost'。

如果按照MYSQL的默认配置,skip_name_resovle 是OFF,MYSQL服务器就会将 127.0.0.1 转换为 localhost,那么前者和后者两种连接的 current_user 都是 root@'localhost'

bitsCN.com
Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn