MySQL服务器报告正确的启动但在连接尝试时返回错误

时间:2011-10-25 07:16:17

标签: mysql wamp

我正在尝试设置我的本地开发环境,我正在使用易于安装的“WAMP”软件包。

现在我安装wamp,运行它并启动所有服务,我尝试连接到MySQL服务器,但是我收到错误:

SQL Error (2003): Can't connect to MySQL server on 'localhost' (10060)

如果我通过SQL客户端或PHP尝试它并不重要,我尝试重新安装几次。

所以我决定在启动后看一下mysql.log文件,这就是我得到的:

111024 22:57:41 [Note] Plugin 'FEDERATED' is disabled.
111024 22:57:41 InnoDB: The InnoDB memory heap is disabled
111024 22:57:41 InnoDB: Mutexes and rw_locks use Windows interlocked functions
111024 22:57:41 InnoDB: Compressed tables use zlib 1.2.3
111024 22:57:41 InnoDB: Initializing buffer pool, size = 128.0M
111024 22:57:41 InnoDB: Completed initialization of buffer pool
111024 22:57:41 InnoDB: highest supported file format is Barracuda.
111024 22:57:41  InnoDB: Waiting for the background threads to start
111024 22:57:42 InnoDB: 1.1.8 started; log sequence number 1595675
111024 22:57:42 [Note] Event Scheduler: Loaded 0 events
111024 22:57:42 [Note] wampmysqld: ready for connections.
Version: '5.5.16-log'  socket: ''  port: 3306  MySQL Community Server (GPL)

第二行到最后一行读取“wampmysqld准备连接”。表明它应该工作,这让我感到困惑......

我几乎不知道出了什么问题,所以我希望你们有任何关于我可以尝试做什么的建议,以便开始运行。

2 个答案:

答案 0 :(得分:1)

现在我已经困扰了很长一段时间,但我相信我现在已经找到了解决方案。

我已经完成了从删除文件中包含“mysql”的所有内容到注册表数据库的所有操作,即使没有任何帮助。

我甚至最终使用虚拟机作为临时解决方案,但是因为它改变了IP我必须编辑my.cnf,这是我意识到my.ini错过bind-address的地方值。

解决方案结果令人讨厌,即使我不确定它到底是做什么的。

无论如何,我最终编辑了my.ini中的一些内容,我编辑了这些行:

[client]
socket      = /tmp/mysql.sock

[wampmysqld]
socket      = /tmp/mysql.sock
log-bin=mysql-bin

我评论了log-bin行,编辑了socket行并添加了bind-address所以它看起来像这样:

[client]
socket      = C:/wamp/mysql.sock

[wampmysqld]
socket      = C:/wamp/mysql.sock
bind-address = 127.0.0.1

#log-bin=mysql-bin

正如我所说,不确定是做了什么,但如果由于某些原因你遇到同样的问题,其中一些可能对你有用。

答案 1 :(得分:0)

在Windows 7中,“localhost”默认情况下不会在本地解析。

假设(很大的假设!)你正在使用Windows 7,你需要做两件事之一:

  • 使用mysql -h hostname -u root -p(使用您自己的主机名),以便正确解析主机
  • ...或取消注释主机文件中包含127.0.0.1的行(c:\ windows \ system32 \ drivers \ etc \ hosts)

当您执行mysql -u root -p而未指定主机名时,第二个选项将允许使用默认主机“localhost”。