我必须修改我的网站的数据库表,但是当我运行时 'phpMyAdmin'(我在我的Windows Vista开发笔记本电脑上使用Xampp)我得到了
错误MySQL说:#2002 - 服务器没有响应(或者本地MySQL服务器的套接字没有正确配置) 配置中定义的controluser连接失败。
所以在这里阅读SO时我改变了文件c:\xampp\phpMyAdmin\config_inc.php
,即代码行
$cfg['Servers'][$i]['host'] = 'localhost';
已更改为
$cfg['Servers'][$i]['host'] = '127.0.0.1';
我需要让我的套接字连接为数据库工作,我读了here
这意味着我只使用tcp / ip而不是套接字,但我的网站之前使用套接字工作FINE。
所以我关闭了我的'Norton Security Suite'以试图阻止防火墙保护问题导致此问题,并使用'localhost'重新启动,但得到同样的错误。
如何恢复使用'localhost'?
答案 0 :(得分:0)
主机值没有问题,但phpMyAdmin使用的['controluser']
无法访问您的数据库。见phpMyAdmin docs
您还可以使用authtype = 'config'
完全取消对控制用户的需求:more docs
答案 1 :(得分:0)
我不得不说这里发生了一件令人不安的事情 - 一般令人担忧的事件“我没有改变它刚开始工作的任何事情。”
对于后人,让我概述一下我如何“解决”这个问题。但在我这样做之前,让我描述一下我怀疑的方向和最初的问题:
问题 - >键入浏览器时localhost / myphpadmin无法解析,但127.0.0.1/phpmyadmin工作正常。我需要使用phpMyAdmin来处理我的一个网站的数据库。当我点击Xampp控制面板上我的Apache开始/停止按钮旁边的“管理员”时,浏览器中出现了“Xampp for Windows”,但点击该页面上“工具”下的“phpMyAdmin”导致了我上面提到的错误信息。但是,如果我在任何浏览器窗口中键入127.0.0.1/phpmyadmin,phpMyAdmin启动正常。
由于MySQL'侦听'端口3306(对于你的Xampp用户,你会在Xampp控制面板上按下MySQL旁边的'开始'按钮时看到这个),并且因为使用'localhost / phpMyAdmin'名称< em>应该解析到该端口上的连接,我想知道我的'localhost'名称解析是否是问题,因为MySQL 成功从该端口开始,正如我在Xampp中看到的那样控制面板应用。从localhost 启动phpMyAdmin应该成功 - MySQL正在运行。 因此,似乎不是一个问题,例如,另一个程序在MySQL之前“窃取”端口3306--在MySQL已成功启动时将“phpmyadmin”添加到“localhost”并不是问题。
要调查将“localhost”解析为连接的位置,我按照给出的建议检查c:\ windows \ system32 \ drivers \ etc中的HOSTS文件,并在HOSTS文件中找到上述评论中的条目(< strong>“127.0.0.1 localhost”和“:: 1 localhost”)。没有什么可看的,HOSTS文件实际上存在并且看起来很好。
然后我修改了文件c:\ xampp \ phpMyAdmin \ config.inc.php,以更改代码行
$cfg['Servers'][$i]['host'] = 'localhost';
要 $ cfg ['Servers'] [$ i] ['host'] ='127.0.0.1';
并且那个创可贴允许我运行phpMyAdmin,但没有解释为什么localhost / phpMyAdmin无法成功解析,我渴望将此config.inc.php更改回'localhost'而不是'127.0.0.1'。 (今天早上我做到了这一点)。
我还点击了PhpMyAdmin窗口右下方的“官方主页”,浏览了PhpMyAdmin主页网站,看看是否存在“已知问题”并且一无所获。
一个建议是(“可能是阻止mysql端口的防火墙”) 在The server is not responding (or the local MySQL server's socket is not correctly configured)
所以我暂时停止了我的防火墙(诺顿安全套件) - 没有变化。
在整个上述过程中,每当我更改某些内容时,我都会重新启动计算机。 所以午夜时分,我放弃了,然后去睡觉了。
现在,好像通过魔术,今天早上我现在可以从Xampp控制面板启动MySQL服务,然后点击Apache启动/停止旁边的“管理员”,并突然选择Xampp For Windows屏幕上的“myPhpAdmin”链接工作良好。正如您在上面的描述中所看到的,我没有永久改变任何内容 - 我只停止了我的防火墙几分钟并临时更改了\ xampp \ phpMyAdmin \ config.inc.php中的'host'条目 - 并且今天早上,防火墙备份,临时更改为'host',恢复到config.inc.php中的'localhost' - 一切都很顺利。非常令人不安。虽然你可以清除电气连接并固定东西,但我上面所做的“灰尘”改变了我所知道的一切。我现在可以在Firefox和IE中键入localhost / myphpadmin并成功启动phpmyadmin,因此我可以在我的站点的数据库上工作。
如果有人有任何想法,我想知道上面发生了什么样的“尘埃落定”,我不喜欢像这样“固定”的虚假问题。