2017-09-13 54 views
-1

所以我對此很瘋狂。我安裝了MAMP,它的MySQL工作正常。我現在從官方dmg安裝了MySQL 5.7.19並安裝了它們。OSX MySql終端參數

從pref面板我沒有得到狀態更新,因此即使它正在運行,我也無法阻止它。微不足道,因爲我可以將它卸載。

但是,我面臨的最大問題是,雖然服務器啓動正確(從pref面板),我可以看到進程正在運行,當我嘗試在終端中運行mysql時,會看到相應的/tmp/mysql.sock文件或任何其他的mysql命令)我得到一個錯誤,指出它無法找到襪子文件,它將Applications/MAMP路徑導出。

我到處尋找一個my.cnf可能會設置這個,並且沒有(除了MAMP使用的)。沒有環境變量設置爲覆蓋它,什麼都沒有。事實上,沒有其他my.cnf文件,但由於某種原因,它仍然認爲它應該使用/ Applications/MAMP路徑。

my_print_defaults client證實了這一點,因爲它的管道出

--socket=/Applications/MAMP/tmp/mysql/mysql.sock 

,但我完全不知道在何處以及如何被設定,我需要能夠在這種情況下終端命令運行。現在讓我瘋狂幾個小時。

/etc/my.cnf /etc/mysql/my.cnf /usr/local/mysql/etc/my.cnf ~/.my.cnf 

沒有環境變量MYSQL_UNIX_PORT沒有文件如下所述:https://dev.mysql.com/doc/refman/5.7/en/problems-with-mysql-sock.html

因此,如何它到底在得到這個值?

也在DATA_DIRBASE_DIR檢查,沒有my.cnf那裏。

顯然我已經完成which mysql以確認我正在調用正確的二進制文件。

任何幫助非常感謝!

UPDATE運行my_print_defaults client --verbose --no-defaults管道的輸出是相同的,所以我猜測它是以某種方式在別處設置的。哪裏可以設置這個變量?

回答

0

好吧,我終於找到了答案,並將它分享給有同樣問題的任何人。

本質上,通過〜/ .mylogin.cnf文件添加--socket參數!

我不確定我是否曾經在那裏加過它,但我很確定它不是我,所以我猜測MAMP做到了。

這是一個加密的文件,所以你不能直接通過您可以通過mysql_config_editor更改編輯:

mysql_config_editor remove --socket

而且問題解決了!