最近想在mac上裝一個mysq,但是各類坑,網上搜了N多,就是不行,最後在CSDN上一位叫chris-gardner的博客裏找到告終果(侵刪)mysql
下載mysql的安裝包,安裝完成後,它會隨機的給你一個本地root的密碼,可是臭長臭難記,root@localhost:後面的就是密碼,太特麼噁心了sql
在終端執行mysql -uroot -p後是這樣的:數據庫
輸入進去的密碼壓根就不顯示,輸入N多遍,總是提示安全
ERROR 1045: Access denied for user: 'root@localhost' (Using
password: NO)12複製代碼
或者bash
ERROR 1045: Access denied for user: 'root@localhost' (Using
password: YES)12複製代碼
解決上面錯誤的方法之一就是從新設置咱們的mysql的root密碼。服務器
1.在終端輸入下面命令關閉正在運行的mysql,若是msyql沒有運行能夠跳過,須要輸入mysql的密碼。若是mysql密碼忘記了,能夠直接經過系統偏好設置裏面關閉!ui
/usr/local/mysql/bin/mysqladmin -u root -p shutdown1複製代碼
系統便好設置關閉如圖
spa
2.進入mysql的bin目錄執行以下命令3d
$ cd /usr/local/mysql/bin
$ sudo su 12複製代碼
以後輸入管理員密碼會看到code
sh-3.2# 1複製代碼
以後咱們輸入下面命令以安全模式運行mysql
sh-3.2#./mysqld_safe --skip-grant-tables &1複製代碼
運行結束咱們打開mac的系統偏好設置,選擇msyql,咱們會發現Mysql從新運行了如圖
回到終端點擊Command + N 從新打開一個終端
輸入
mysql -u -root1複製代碼
這時候咱們不須要密碼就能進入mysql
Your MySQL connection id is 57
Server version: 5.7.10 MySQL Community Server (GPL)
Copyright (c) 2000, 2015, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql>123456789101112複製代碼
注意:這裏有的時候會進不來,這個時候能夠嘗試重啓mac電腦,具體緣由我也不清楚。
3.修改root密碼
首先執行下面命令爲了可以修改任意的密碼
mysql> FLUSH PRIVILEGES;1複製代碼
以後執行修改密碼的SQL語句,這裏的qsd19001008能夠替換你本身想要修改的密碼
mysql> SET PASSWORD FOR root@'localhost' = PASSWORD('qsd19001008');1複製代碼
若是你的子賬號能夠登陸msyql你也能夠嘗試下面的方法
mysql>UPDATE mysql.user SET Password=PASSWORD('newpwd') WHERE User='root';1複製代碼
或
mysql>USE mysql
UPDATE user SET Password = PASSWORD('newpwd')
WHERE Host = 'localhost' AND User = 'root';123複製代碼
又或者
mysql>USE mysql
UPDATE user SET Password = PASSWORD('newpwd')
WHERE Host = '%' AND User = 'root';123複製代碼
最後刷新
FLUSH PRIVILEGES;1複製代碼
Control+D推出mysql,而後關閉安全模式數據庫,這裏要輸入你剛纔設置數據密碼就好啦
/usr/local/mysql/bin/mysqladmin -u root -p shutdown1複製代碼
到目前爲止你就找回了你mysql的密碼啦
正常啓動mysql數據庫,輸入剛纔設置的密碼qsd19001008
/usr/local/mysql/share/mysql.server start1複製代碼
若是上面的命令不執行,同理到系統偏好裏開啓mysql服務器。
最後執行下面的終端命令,而後輸入剛纔設置的密碼qsd19001008咱們就能夠正常進入mysql啦
$mysql -u root -p複製代碼