php mysql中localhost与127.0.0.1的区别

昨天配置mysql环境时phpmyadmin提示mysqli_real_connect(): (HY000/2002): No such file or directory,网站程序提示无法链接数据库,将服务器地址由localhost更换为127.0.0.1后恢复正常,一番搜索得知区别:

localhost在php中会自动寻找mysql的unix socket进行连接,不解析不走网卡不经过防火墙不会受到相关限制,windows系统中没有这个特性;

127.0.0.1走网卡,会受到网卡和防火墙的限制。

涨知识,备忘。