解决phpmyadmin本地应用卡顿问题

当使用phpmyadmin时,经常会遇见响应慢的情况,访问一个页面大概需要等3-4秒钟。查找原因,网上回答不一,有的说是请求服务器验证脚本,需要注释掉部分version_check.php的部分代码,我照做,无效;又有人说需要修改Util.class.php中的返回时间,我照做,也无效。

推荐教程:PHPMyAdmin

无奈打开调试工具,自己去找到底哪里会让这个工具变得如此之慢,打开network,看到有两个请求,每次访问返回时间都在2秒以上,一个是index.php,一个是sql.php,断点调试(最笨办法,exit);

最终追踪到./Libraries/classes/Dbi/DbiMysqli..php这个文件中mysqli_real_connect() 方法每次都耗时1秒以上,将传入的参数打印出来发现,其中$host参数使用的是localhost,修改成127.0.0.1(config.inc.php中修改),马上秒开,卡顿的感觉消失了,一切清新自然,无比舒畅;

可是为啥mysqli_real_connect使用localhost就要比‘127.0.0.1’慢呢?localhost != 127.0.0.1?

继续查资料:查询一下官方手册mysqli_real_connect函数:http://php.net/manual/zh/mysqli.real-connect.php

里面说明:

host可以使用域名、IP 地址。如果传送 NULL 或者字符串 "localhost" 那么会使用 通道替代 TCP/IP 连接本地服务器。

我在本地启动MySQL服务的时候并没有使用--enable-named-pipe,所以无法使用pipe方式链接服务器,使用了TCP/ip方式连接,当然会变慢了!!


若文章对您有帮助,帮忙点个赞!

0
-5
发布时间 2022-08-03 15:20:30
0 条回复(回复会通过微信通知作者)
点击加载更多评论
登录 后再进行评论
(微信扫码即可登录,无需注册)