2012-03-29 62 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

相關問題