初學MySQL, 遇到了無數(shù)的坑!!! 深受折磨, 會慢慢總結(jié)更新.
希望能給其他自學者一些幫助~ 當然由于我也是初學, 可能也會有不準確的地方, 希望大家可以諒解共勉~
帶有$
符號的命令都是終端命令, 復(fù)制粘貼時不需要加上$
符號
對于root用戶的密碼我第一次設(shè)置之后就忘了, 一直爆這樣的錯誤! 實在是身心疲憊????
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)
以下是設(shè)置密碼步驟,分兩種:
[1] 記得初始密碼, 修改密碼的步驟:
在終端使用$mysql -uroot -p初始密碼
命令進入了mysql之后, 一次執(zhí)行下面語句:
STEP 1
$SET PASSWORD = PASSWORD('新密碼');
STEP 2
$ALTER USER 'root'@'localhost' PASSWORD EXPIRE NEVER;
STEP 3
$flush privileges;
注: 如果你確信你的初始密碼沒有輸入錯誤, 但還是報錯不允許進入的話, 打開設(shè)置中的MYSQL關(guān)閉再重啟, 然后再重新輸入. 應(yīng)該就可以了!
注: 如果敲完 enter 沒有出現(xiàn)Query OK, 0 rows affected (0.00 sec)
說明語句寫錯了, 基本就是單引號不是英文狀態(tài)! 這時候\q
好像不能夠退出終端了, 需要重新進入再重新輸入. 記得改單引號!
注: flush privileges刷新MySQL的系統(tǒng)權(quán)限相關(guān)表,否則會出現(xiàn)拒絕訪問,還有一種方法移怯,就是重新啟動mysql服務(wù)器神年,來使新設(shè)置生效
注: 在 "新密碼" 出填寫你想要設(shè)置的新密碼, 不要再忘記了!
[2] 不記得初始密碼, 修改root密碼的步驟:
STEP 1
停止 mysql server.
以下兩種方式選擇其一:
a. 在 '系統(tǒng)偏好設(shè)置' > MySQL > 'Stop MySQL Server'
b. 在終端直接輸入:
$sudo /usr/local/mysql/support-files/mysql.server stop
注: 會要求你輸入你的用戶密碼, 注意光標不會移動, 就照常敲就可以了, 只有3次機會.
注意mysql的存放路徑, 查看你自己mysql的路徑是否是 /usr/local
不是的話更改到你的存放路徑
STEP 2
在終端,輸入:
$sudo /usr/local/mysql/bin/mysqld_safe --skip-grant-tables
注: 意思是進入MySQL的安全模式
STEP 3
打開另一個新終端[command+n (就可以新建一個窗口)]褒翰,
逐條輸入, 一共4句!!, 不要被我的注解晃住啦~:
$sudo /usr/local/mysql/bin/mysql -u root
$UPDATE mysql.user SET authentication_string=PASSWORD('新密碼') WHERE User='root';
注: 在 "新密碼" 出填寫你想要設(shè)置的新密碼, 不要再忘記了!
注: 如果敲完 enter 沒有出現(xiàn)Query OK, 0 rows affected (0.00 sec)
說明語句寫錯了, 基本就是單引號不是英文狀態(tài)! 這時候\q
好像不能夠退出終端了, 需要重新進入再重新輸入. 記得改單引號!
注: 改密碼的方式有好多, 我也不清楚哪個版本對應(yīng)哪種, 如果上面的這種不好用, 可以試試[1] 記得初始密碼 里的更改密碼語句.
$FLUSH PRIVILEGES;
注:flush privileges刷新MySQL的系統(tǒng)權(quán)限相關(guān)表,否則會出現(xiàn)拒絕訪問,還有一種方法耻涛,就是重新啟動mysql服務(wù)器,來使新設(shè)置生效
$\q
注: \q 與 quit 意思一樣, 退出MySQL.
STEP 4 重啟[MySQL]
重啟之后查看是否能夠登錄, 但我覺得這是進入了MySQL的安全模式, 無論哪個user都能夠登錄, 所以我覺得還應(yīng)該退出安全模式.
舊版的mysql請使用:
$UPDATE mysql.user SET Password=PASSWORD('新密碼') WHERE User='root';
補充:
啟動MySQL服務(wù)
$sudo /usr/local/MySQL/support-files/mysql.server start
重啟MySQL服務(wù)
$sudo /usr/local/mysql/support-files/mysql.server restart
最后: 我也做過很多次修改密碼, 但發(fā)現(xiàn)一直不成功!
這時候最粗暴的方式就是卸載MySQL, 重裝, 一定要記得復(fù)制初始密碼, 再按照第一種方式重新設(shè)置就能好用.
卸載MySQL可以看我的另一篇文章:
密碼更改沒有問題之后, 登錄不上可以看我的另一篇文章:
希望mac MySQL的那些坑這一系列文章能夠幫助大家盡快入門~~