使用 Homebrew 在 MacOS BigSur M1 安裝 Mysql

安裝 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 登入使用者 -pmysql> SET PASSWORD FOR '目標使用者'@'主機' = PASSWORD('密碼');mysql> flush privileges;

例如?

123# mysql -u root -pmysql> SET PASSWORD FOR 'emn178'@'localhost' = PASSWORD('password');mysql> flush privileges;

方法二

使用有權限的使用者登入mysql?

1234# mysql -u 登入使用者 -pmysql> use mysql;mysql> UPDATE user SET Password=PASSWORD("密碼") WHERE User='目標使用者';mysql> flush privileges;

例如?

1234# mysql -u root -pmysql> use mysql;mysql> UPDATE user SET Password=PASSWORD("password") WHERE User='emn178';mysql> flush privileges;

上面是不分主機位址的修改,若要像方法一區分主機的話再加上Host條件,例如?

1mysql> 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密碼,例如?

1234mysql> use mysql;mysql> UPDATE user SET Password=PASSWORD("password") WHERE User='root';mysql> flush privileges;mysql> quit

最後重新啟動mysql

Leave a Reply

Your email address will not be published. Required fields are marked *