安裝 Homebrew(已安裝可跳過)
(1) 開啟 terminal(終端機)
(2) 輸入 xcode-select --install
(3) 輸入
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"
(3.a) Mac M1 需要再執行以下指令設定命令路徑
echo “export PATH=/opt/homebrew/bin:$PATH” >> ~/.zshrc
(4) 關閉並重新開啟 terminal
(5) 輸入 brew -v
確認是否有出現版本資訊(如下)
Homebrew [最新版本號碼]
安裝 MySQL
(1) 確認將要被安裝的版本:
terminal 輸入 brew info mysql
可以看到目前 homebrew 預設安裝的 mysql 版本
mysql: stable [版本號]
(2.a) 安裝預設版本的 mysql:
terminal 輸入 brew install mysql
(2.b) 安裝特定版本的 mysql
terminal 輸入 brew install mysql@5.7
將要指定的版本號(5.7)加在 mysql 後方,前面還需加上 @
啟動/結束 mysql
(1) 確認目前 mysql 在電腦中的執行狀態:
terminal 輸入 brew services list
Name Status
mysql@5.7 stopped
(2) 啟動 mysql:
terminal 輸入 brew services start mysql@5.7
將要指定的版本號(5.7)加在 mysql 後方,前面還需加上 @
(3) 結束 mysql:
terminal 輸入 brew services stop mysql@5.7
將要指定的版本號(5.7)加在 mysql 後方,前面還需加上 @
登入 mysql
(1) terminal 輸入 mysql -u root -p
(2) terminal 上顯示Enter password:
時,什麼都不要輸入直接按下鍵盤的 Enter
因為我們還沒有設定密碼,所以不用輸入
移除 mysql
(1) 結束 mysql:
terminal 輸入 brew services stop mysql@5.7
(2) 移除 mysql:
terminal 輸入 brew uninstall mysql@5.7
將要指定的版本號(5.7)加在 mysql 後方,前面還需加上 @
(3) 清除 homebrew 的 mysql:
terminal 輸入 brew cleanup
homebrew 預設不會移除掉舊的 package,因此我們需要手動清除
(4) 清除電腦中 mysql 的資料:(如果沒有 sudo 權限或是對 sudo 不太清楚的人,請勿下此指令)sudo rm -rf /usr/local/var/mysql
說明MySQL如何修改密碼與忘記密碼時如何重設密碼。
設定root密碼
一開始安裝好mysql時,root可能尚未設定密碼,可以用以下指令設定?
1 | # mysqladmin -u root password '你的密碼' |
或者?
1 | # mysqladmin -u root password |
再輸入密碼
修改使用者密碼
方法一
使用有權限或要修改的使用者本身登入mysql?
123 | # mysql -u 登入使用者 -p mysql> SET PASSWORD FOR '目標使用者'@'主機' = PASSWORD('密碼'); mysql> flush privileges; |
例如?
123 | # mysql -u root -p mysql> SET PASSWORD FOR 'emn178'@'localhost' = PASSWORD('password'); mysql> flush privileges; |
方法二
使用有權限的使用者登入mysql?
1234 | # mysql -u 登入使用者 -p mysql> use mysql; mysql> UPDATE user SET Password=PASSWORD("密碼") WHERE User='目標使用者'; mysql> flush privileges; |
例如?
1234 | # mysql -u root -p mysql> use mysql; mysql> UPDATE user SET Password=PASSWORD("password") WHERE User='emn178'; mysql> flush privileges; |
上面是不分主機位址的修改,若要像方法一區分主機的話再加上Host條件,例如?
1 | mysql> UPDATE user SET Password=PASSWORD("password") WHERE User='emn178' AND Host = 'localhost'; |
方法三
同樣利用mysqladmin指令可以修改root或其他使用者密碼,但該使用者必須有SUPER權限?
1 | # mysqladmin -u 使用者 -p'舊密碼' password '新密碼' |
或者?
1 | # mysqladmin -u 使用者 -p password |
再輸入密碼
忘記密碼重設
如果忘記root密碼可以用以下方式重設?
12 | # /etc/init.d/mysql stop # mysqld_safe --skip-grant-tables & |
用上面方式啟動mysql後可以不用輸入密碼直接連入?
1 | # mysql -u root |
接者使用修改使用者密碼的方法二修改root密碼,例如?
1234 | mysql> use mysql; mysql> UPDATE user SET Password=PASSWORD("password") WHERE User='root'; mysql> flush privileges; mysql> quit |
最後重新啟動mysql