mysql ERROR 1045 (28000): Access denied for user ‘root’@’localhost’ (using password: NO)

在Mac OS X 上安裝了 MySQL,可是root帳號預設無法用沒有密碼登入。

一開始是在 mysql 上下載安裝檔,可是「官方」的版本似乎很大牌或是不太貼心,都沒有幫忙設定執行檔到path變數裡,所下mysql 相關指令無法執行,還是非官方的版本貼心一點。

非官方的安裝方法,先裝homebrew:

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
在終端機命令列提示貼上這個,就可以多一個 brew 指令可以使用。

接著,用 brew install Mysql Client:

brew install mysql --client-only --universal

醬子就可以只安裝到 client, 不下參數就可以連 server side 一起安裝。


Stop MySQL Server (on Linux):

/etc/init.d/mysql stop

Stop MySQL Server (on Mac OS X):

mysql.server stop

接著,要手動啟動一下 mysql:

mysqld_safe --skip-grant-tables &
mysql -u root

 

進入mysql 後,

use mysql;
SET PASSWORD FOR 'root'@'localhost' = PASSWORD('new-password');
FLUSH PRIVILEGES;
quit;

 

Stop MySQL Server:

mysql stop

Start MySQL server and test it:

mysql -u root -p

 

開新 DB  & 建新帳號:

Create database newdb;

CREATE USER 'dbuser'@'localhost' IDENTIFIED BY 'user-password-here';

GRANT ALL PRIVILEGES ON newdb.* TO dbuser@localhost;

FLUSH PRIVILEGES;

 

 

相關文章:

mysql Access denied for user ‘dbaccount’@’%’ to database
https://stackoverflow.max-everyday.com/2017/09/mysql-access-denied-for-user-dbaccount-to-database/

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *