Mac -bash: mysql: command not found

龐順龍發表於2019-05-10

Mac上使用終端連線MySql的時候提示-bash: mysql: command not found,其實是未能找到MySql的路徑導致的

我們只需要在終端執行下: PATH="$PATH":/usr/local/mysql/bin,給MySql指定下路徑即可,但是這只是臨時的修改了MySql的環境變數,重啟後就沒了,想要重啟後還在的話,那就需要修改配置檔案。

下面來補習下Mac系統知識點:

Mac 一般使用bash作為預設shell,Mac系統的環境變數,載入順序為:

/etc/profile /etc/paths ~/.bash_profile ~/.bash_login ~/.profile ~/.bashrc

當然/etc/profile和/etc/paths是系統級別的,系統啟動就會載入,後面幾個是當前使用者級的環境變數。

後面3個按照從前往後的順序讀取,如果~/.bash_profile檔案存在,則後面的幾個檔案就會被忽略不讀了,如果~/.bash_profile檔案不存在,才會以此類推讀取後面的檔案。

~/.bashrc沒有上述規則,它是bash shell開啟的時候載入的。

如果沒特殊說明,設定PATH的語法都為:export PATH=$PATH:<PATH 1>:<PATH 2>:<PATH 3>:------:<PATH N>

一、全域性設定

下面的幾個檔案設定是全域性的,修改時需要root許可權


儲存成功後,重啟終端就可以使用MySql命令了,不需要每次都配置臨時PATH路徑。

2、/etc/profile (建議不修改這個檔案 )

全域性(公有)配置,不管是哪個使用者,登入時都會讀取該檔案。

3、/etc/bashrc (一般在這個檔案中新增系統級環境變數),全域性(公有)配置,bash shell執行時,不管是何種方式,都會讀取此檔案。

4、建立一個檔案:sudo touch /etc/paths.d/mysql,用 vim 開啟這個檔案(如果是以 open -t 的方式開啟,則不允許編輯):sudo vim /etc/paths.d/mysql,編輯該檔案,鍵入路徑並儲存(關閉該 Terminal 視窗並重新開啟一個,就能使用 mysql 命令了) /usr/local/mysql/bin

二、單個使用者設定

1、~/.bash_profile (任意一個檔案中新增使用者級環境變數)(注:Linux 裡面是 .bashrc 而 Mac 是 .bash_profile)

若bash shell是以login方式執行時,才會讀取此檔案。該檔案僅僅執行一次!預設情況下,他設定一些環境變數
設定命令別名alias ll=’ls -la’
設定環境變數:export PATH=/opt/local/bin:/opt/local/sbin:$PATH

2、~/.bashrc 同上,如果想立刻生效,則可執行下面的語句:$ source 相應的檔案,一般環境變數更改後,重啟後生效。

龐順龍最後編輯於:3年前

內容均為作者獨立觀點,不代表八零IT人立場,如涉及侵權,請及時告知。

相關文章