2011-11-06 163 views
1

當我嘗試從PrefPane啓動MySQL時,它向我詢問我的密碼,然後它一直說MySQL服務器有stopped紅色。Mysql PrefPane無法正常工作 - OS X

它不啓動。

$ mysqladmin start 
mysqladmin: connect to server at 'localhost' failed 
error: 'Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)' 
Check that mysqld is running and that the socket: '/tmp/mysql.sock' exists! 
$ mysql start 
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2) 

當我搜索mysql過程,這是我所看到的:

$ ps wwaux | grep mysqld | grep -v grep 
_mysql   203 0.0 0.5 2518204 19288 ?? S  3:30PM 0:23.25 /opt/local/libexec/mysqld --basedir=/opt/local --datadir=/opt/local/var/db/mysql5 --user=_mysql --log-error=/opt/local/var/db/mysql5/localhost.err --pid-file=/opt/local/var/db/mysql5/localhost.pid --socket=/tmp/mysql.sock --port=3306 
root    75 0.0 0.0 2435492 884 ?? S  3:30PM 0:00.04 /bin/sh /opt/local/lib/mysql5/bin/mysqld_safe --datadir=/opt/local/var/db/mysql5 --pid-file=/opt/local/var/db/mysql5/localhost.pid 

的思考?

+0

爲什麼downvote沒有解釋? – marcamillion

+0

這個問題更適合於「超級用戶」而不是堆棧溢出,這是更多的編程問題。 – Jericon

回答

0

原來,mysqld進程正在運行並停滯。所以我剛進入Activity Monitor並殺死它,並重新啓動它。

它現在可以工作。

0

檢查MySQL的端口是開放的:文件的mysql.sock

telnet localhost 3306 

檢查是否存在並修復它的權限,如果必要的:

sudo chown _mysql:wheel /tmp/mysql.sock 

嘗試通過終端停止和啓動MySQL:

sudo /Library/StartupItems/MySQLCOM/MySQLCOM stop 
sudo /Library/StartupItems/MySQLCOM/MySQLCOM start 

如果沒有任何幫助,嘗試重置MySQL root密碼和/或重新安裝MySQL。

+1

Nah ..有些愚蠢。這似乎是一個'mysql'進程正在運行,所以我不得不先殺了它...然後重新啓動它,它工作。我已經添加了這個答案。 – marcamillion

+0

雖然感謝您嘗試! – marcamillion

+0

marcamillion,謝謝你。完全忘記檢查過程是否已經存在。幫了大忙:) –