2012-03-29 14 views
18

Ho installato Mysql 5.1 su Mac OS X 10.7 Lion. Per qualche ragione, però, quando provo ad avviare il server con il comando "mysqld" ottengo un errore nel file di registro che dice:Un altro server mysqld in esecuzione sull'errore 3306 della porta

120328 21:32:40 [ERROR] Impossibile avviare il server: Bind on Porta TCP/IP: Indirizzo già in uso

120328 21:32:40 [ERRORE] Avete già un altro server mysqld in esecuzione sulla porta: 3306?

120328 21:32:40 [ERRORE] Interruzione

Se corro "-nat netstat | grep 3306" nel mio terminale, ricevo il seguente:
tcp4 0 0 * 0,3306 . LISTEN

UPDATE:

Quindi, ecco l'output per questo.
mysqld 24645 sb1752 12u IPv4 0xffffff8010f6bde0 0T0 TCP *: mysql (LISTEN)

Questo è strano però! Perché il mio server mysql non è stato avviato.
Quando digito "mysql" nella riga di comando, dice
ERRORE 2002 (HY000): Impossibile connettersi al server MySQL locale attraverso presa '/tmp/mysql.sock' (2)

ho installato altra versione di mysql e disinstallata in precedenza oggi. Qualche idea su cosa fare qui?

+1

Qual è l'output di 'ps -ef" grep mysql'? –

+5

@ Tim, come a questa domanda è diventata off-topic? –

risposta

18

Si potrebbe utilizzare netstat -lp | grep 3306 per scoprire quale programma è già in ascolto sulla porta 3306 (si dovrebbe vedere PID/nome del programma in ultima colonna) e stop che (forse mysql è già in esecuzione?).

In alternativa è possibile avviare il server appena installato su una porta diversa. (Modifica my.cnf e cambiare la porta di default lì)

+0

Grazie Come posso fermare l'altro mysql? Pensavo ne avessi uno solo. ? – Shaan

+4

Prova '/etc/init.d/mysqld stop' o usa' kill ' – stewe

+0

Perfetto, ha funzionato, grazie! – Shaan

27

uso lsof -i TCP:3306 per controllare quale programma si lega porta 3306

+0

funziona con Mac OSX – Intentss

+0

questo è un bel modo perché prenderà anche qualsiasi tunnel e cosa non avresti potuto impostare io uso SCP oltre i tunnel e ho legato un tunnel al 3306 – qrikko

Problemi correlati