前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >mysql中localhost和127.0.0.1的区别

mysql中localhost和127.0.0.1的区别

作者头像
老高的技术博客
发布2022-12-27 21:47:45
8770
发布2022-12-27 21:47:45
举报

mysql的默认的root用户会有很多行,自习观察后你就会发现每行的用户名或密码可能相同,但是host一定不同,host是登陆用户的主机名,也就是说,'localhost','127.0.0.1','phpgao.local','%'都算不同的用户!

理解了这一点后,那么我的问题就附上水面了!

有些TX经常会遇到这个问题:

使用PHP连接mysql数据库,使用localhost作为主机名总是连接失败,但是使用'127.0.0.1'就可以顺利连接,这到底是为什么? mysql中HOST为localhost和127.0.0.1到底有什么区别?

经过一番搜索,老高总结如下:

使用到的命令

代码语言:javascript
复制
mysql>status;
mysql>show grants;
  1. 类Unix系统下,如果不使用-h指定主机名或者使用了localhost,那么会使用unix domain socket与mysql服务器沟通,比TCP/IP快一些!所以你想使用TCP/IP协议,请将host指定为'127.0.0.1'。
  2. PHP连接mysql如果使用'localhost'发生问题,首先可以明确的是PHP会试着使用unix domain socket与服务器连接,所以请检查php.ini中mysql.default_socket = /var/mysql/mysql.sock是否配置正确。
  3. 如果想要明确连接方式,可以再配置文件中显式声明
代码语言:javascript
复制
protocol=tcp
  1. 在mysql的官方文档中解释道:如果mysql在win上跑,如果系统开启了--enable-named-pipe,然后访问服务器的时候没有指定hostname,那么mysql客户端会以pipe为优先连接,如果连接失败,那么再会去尝试使用TCP/IP去连接。你可以指定hostname为.在win下强制使用pipes。

If the MySQL server is running on Windows, you can connect using TCP/IP. If the server is started with the --enable-named-pipe option, you can also connect with named pipes if you run the client on the host where the server is running. The name of the named pipe is MySQL by default. If you do not give a host name when connecting to mysqld, a MySQL client first tries to connect to the named pipe. If that does not work, it connects to the TCP/IP port. You can force the use of named pipes on Windows by using . as the host name.

Reference:

http://stackoverflow.com/questions/19712307/mysql-localhost-127-0-0-1 http://stackoverflow.com/questions/3715925/localhost-vs-127-0-0-1 http://dev.mysql.com/doc/refman/5.5/en/can-not-connect-to-server.html http://madproject.com/general/connect-to-mysql-using-localhost-instead-of-127-0-0-1-on-a-mac/ http://stackoverflow.com/questions/9714899/php-mysql-difference-between-127-0-0-1-and-localhost http://superuser.com/questions/744972/connecting-to-mysql-from-127-0-0-1-instead-of-from-localhost http://blog.csdn.net/xifeijian/article/details/12879395 http://blog.csdn.net/topasstem8/article/details/18357789

本文参与?腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2015-01-19,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客?前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与?腾讯云自媒体分享计划? ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
云数据库 SQL Server
腾讯云数据库 SQL Server (TencentDB for SQL Server)是业界最常用的商用数据库之一,对基于 Windows 架构的应用程序具有完美的支持。TencentDB for SQL Server 拥有微软正版授权,可持续为用户提供最新的功能,避免未授权使用软件的风险。具有即开即用、稳定可靠、安全运行、弹性扩缩等特点。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
http://www.vxiaotou.com