`
gcq04552015
  • 浏览: 462106 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

localhost和127.0.0.1的区别

阅读更多
一.
localhost也叫local ,正确的解释是:本地服务器
127.0.0.1在windows等系统的正确解释是:本机地址(本机服务器)
他们的解析通过本机的host文件,windows自动将localhost解析为127.0.0.1
二.
localhot(local)是不经网卡传输!这点很重要,它不受网络防火墙和网卡相关的的限制。
127.0.0.1是通过网卡传输,依赖网卡,并受到网络防火墙和网卡相关的限制。
本机IP 也是通过网卡传输的,依赖网卡,并受到网络防火墙和网卡相关的限制。
但是本机IP与127.0.0.1的区别是:
127.0.0.1 只能通过本机访问
本机IP 通过本机访问也能通过外部访问

一般设置程序时本地服务用localhost是最好的,localhost不会解析成ip,也不会占用网卡、网络资源。

有时候用localhost可以,但用127.0.0.1就不可以的情况就是在于此。猜想localhost访问时,系统带的本机当前用户的权限去访问,而用ip的时候,等于本机是通过网络再去访问本机,用的到网络用户的权限。
三.
实例:
1. mysql -h 127.0.0.1 的时候,使用TCP/IP连接,
mysql server 认为该连接来自于127.0.0.1或者是”localhost.localdomain”

2. mysql -h localhost 的时候,是不使用TCP/IP连接的,而使用Unix socket;
此时,mysql server则认为该client是来自”localhost”

3. mysql权限管理中的”localhost”有特定含义:
—— MySQL手册 5.6.4 ….. A Host value may be a hostname or an IP number, or ‘localhost’ to indicate the local host.

注意:虽然两者连接方式有区别,但当localhost 为默认的127.0.0.1时,两种连接方式使用的权限记录都是以下的1.row的记录(因为记录在前,先被匹配)

*************************** 1. row ***************************
                 Host: localhost
                 User: root
……

*************************** 2. row ***************************
                 Host: 127.0.0.1
                 User: root

证明:

shell> mysql -h 127.0.0.1
mysql> status;

Current user:           root@127.0.0.1

SSL:                    Not in use
Current pager:          stdout
Using outfile:          ”
Using delimiter:        ;
Server version:         5.1.33-log Source distribution
Protocol version:       10
Connection:          127.0.0.1 via TCP/IP

shell> mysql -h locahost
mysql> status;

Current user:           root@localhost
SSL:                    Not in use
Current pager:          stdout
Using outfile:          ”
Using delimiter:        ;
Server version:         5.1.33-log Source distribution
Protocol version:       10
Connection:          Localhost via UNIX socket

shell> mysql -h XXXX(ip)

mysql> status;

Current user:           root@ip

SSL:                    Not in use
Current pager:          stdout
Using outfile:          ”
Using delimiter:        ;
Server version:         5.1.33-log Source distribution
Protocol version:       10
Connection:          XXXX(ip) via TCP/IP


本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/JkunZhang/archive/2010/12/09/6066158.aspx
分享到:
评论

相关推荐

    mysql不能用localhost,127.0.0.1连接,只能用ip连接 的解决方法

    在MySQL数据库系统中,连接方式通常分为通过主机名(如localhost)和IP地址(如127.0.0.1)两种。当你遇到“mysql不能用localhost,127.0.0.1连接,只能用ip连接”的问题时,这可能是由于MySQL配置文件中的设置或用户...

    Win7下localhost与127.0.0.1的区别.docx

    Win7下localhost与127.0.0.1的区别.docx

    mysql_connect localhost和127.0.0.1的区别(网络层阐述)

    总结起来,`localhost` 和 `127.0.0.1` 在MySQL连接中的主要区别在于它们使用的通信机制,`localhost` 通过Unix域套接字实现高效本地通信,而 `127.0.0.1` 则使用TCP/IP协议栈,适合远程访问场景或跨网络通信。...

    php mysql localhost,127.0.0.1和ip区别

    localhost与127.0.0.1的区别localhost与127.0.0.1的区别是什么?相信有人会说是本地ip,曾有人说,用127.0.0.1比localhost好,可以减少一次解析。看来这个入门问题还有人不清楚,其实这两者是有区别的。 no1: ...

    route -f清除路由表,导致localhost和127.0.0.1不能访问的解决方法

    本文将介绍route命令在清除路由表后,导致无法访问localhost和***.*.*.*(回环地址)的解决方法。 首先,需要了解route命令及其功能。route命令允许用户手动配置和修改IP路由表,其主要选项有add(添加)、change...

    127.0.0.1和localhost地址知识详解.docx

    127.0.0.1和localhost地址知识详解.docx

    解决VUE项目localhost端口服务器拒绝连接,只能用127.0.0.1的问题

    Vue项目不能使用localhost:8xx0进入项目,但是将localhost替换为127.0.0.1却可以进入。 解决办法: 进入文件 C:\Windows\System32\drivers\etc\hosts 用记事本打开 hosts 文件进行编辑,看看文件里是否有 127.0.0.1...

    MySQL数据库主机127.0.0.1与localhost区别

    MySQL数据库在配置和使用过程中,有时会遇到主机名设置为`127.0.0.1`或`localhost`的区别。这两个概念虽然都代表本地主机,但在连接MySQL数据库时,它们之间存在微妙的差异。 首先,`127.0.0.1`是一个特殊的IP地址...

    完美解决MySQL通过localhost无法连接数据库的问题

    问题:一台服务器的PHP程序通过localhost地址无法...大部分情况下,可以用localhost代表本机127.0.0.1,但是在MySQL连接时,二者不可混用,而且MySQL中权限设置中localhost与127.0.0.1也是分开设置的。当设置为127.0.0.

    解决Spring Boot 在localhost域奇怪的404问题(Mac book pro)

    但是,在某些情况下,localhost域名可能会出现奇怪的404错误,这是因为localhost域名的解析方式和其他域名不同所导致的。 知识点2:Spring Boot中的域名解析 在Spring Boot应用程序中,默认情况下,Spring Boot会...

    ASP本地调试工具,127.0.0.1

    标题中的"ASP本地调试工具,127.0.0.1"表明这个工具是为在本地计算机上运行ASP应用并使用localhost(127.0.0.1)进行调试而设计的。127.0.0.1是一个特殊的IP地址,代表本地环回接口,通常用于指向本机的网络服务。 ...

    hadoop运维经验分享

    2012年华东运维技术大会上分享的"Hadoop运维经验"涵盖了Hadoop生态系统中的多个关键方面,旨在帮助IT专业人士更好地管理和优化大规模数据处理环境。以下是对这些运维经验的详细解读: 1. **集群规划与搭建**:...

    Mac os 解决无法使用localhost连接mysql问题

    在Mac OS系统中,当你遇到无法使用`localhost`连接到MySQL数据库的问题时,这通常涉及到网络连接机制和系统配置的差异。在这个问题中,我们发现`localhost`与`127.0.0.1`在连接MySQL时表现不同,这是因为它们采用的...

    java jdbc 数据库 mysql oracle pgsql 驱动

    dbip –为数据库服务器的IP地址,如果是本地可写:localhost或127.0.0.1。 port –为数据库的监听端口,需要看安装时的配置,缺省为1521。 databasename –为数据库的SID,通常为全局数据库的名字。 SQL Server...

Global site tag (gtag.js) - Google Analytics