2012-03-29 66 views
18

我在Mac OS X 10.7 Lion上安装了Mysql 5.1。但是,出于某种原因,当我尝试使用命令“mysqld”启动服务器时,我在日志文件中看到一条错误:在端口3306上运行的另一个mysqld服务器错误

120328 21:32:40 [ERROR]无法启动服务器:绑定TCP/IP端口:地址已被使用

120328 21:32:40 [错误]您是否已经有另一台运行在端口3306上的mysqld服务器?

120328二十一时32分40秒[错误]中止

如果我运行 “netstat的-nat | grep的3306” 我的终端,我得到如下:
TCP4 0 0 * 0.3306 LISTEN

UPDATE:

所以这里的为输出。
mysqld 24645 sb1752 12u IPv4 0xffffff8010f6bde0 0t0 TCP *:mysql(LISTEN)

虽然这很奇怪!因为我的mysql服务器没有启动。
当我在命令行中键入 “MySQL的”,它说:
ERROR 2002(HY000):无法通过套接字 '/tmp/mysql.sock' 连接到本地MySQL服务器(2)

我没有安装其他版本的mysql并在今天早些时候卸载。任何想法在这里做什么?

+1

什么的'ps -ef的“grep mysql'的输出? – 2012-03-29 01:48:49

+5

@Tim,这个问题是如何成为题外话? – 2013-04-22 09:45:26

回答

18

你可以使用netstat -lp | grep 3306,找出哪些节目已在侦听端口3306(你应该看到PID /在最后一栏项目名称),停止(也许MySQL的已经开始?)。

或者,您可以在不同的端口上启动新安装的服务器。 (编辑my.cnf和更改默认的端口有)

+0

谢谢。我该如何阻止另一个mysql?我以为我只有一个。 ? – Shaan 2012-03-29 01:58:20

+4

尝试'/etc/init.d/mysqld stop'或使用'kill ' – stewe 2012-03-29 02:01:45

+0

完美的工作,谢谢! – Shaan 2012-03-29 02:08:36

27

使用lsof -i TCP:3306检查哪些程序绑定端口3306

+0

与Mac OSX版 – Intentss 2013-12-10 19:38:45

+0

的作品,这是一个很好的方式,因为它也可以捕获任何隧道以及你可能没有设置的东西。我使用scp通过隧道,并绑定了隧道3306 – qrikko 2015-05-27 07:47:50

相关问题