方法:1、用“set password for 用戶名@localhost = password(‘新密碼’)”修改;2、用“mysqladmin -u用戶名-p password 新密碼”修改;3、用UPDATE編輯user表等方法修改。
本教程操作環境:windows10系統、mysql5.7版本、Dell G3電腦。
mysql5.7怎么修改root密碼
mysql5.7版本:
方法1: 用SET PASSWORD命令
格式:
mysql>?set?password?for?用戶名@localhost?=?password('新密碼');
例子:
mysql>?set?password?for?root@localhost?=?password('123');
mysql5.7和mysql8.0以上都可以用
方法2:用mysqladmin
格式:
mysqladmin?-u用戶名?-p?password?新密碼
例子:
mysqladmin?-uroot?-p?password?123
mysql5.7版本
方法3:用UPDATE直接編輯user表
mysql>?use?mysql; mysql>?update?user?set?password=password('123')?where?user='root'?and?host='localhost'; mysql>?flush?privileges;
mysql 5.7和mysql8.0及以上
方法4:使用alter,使用這個有一個坑,很多博客說可以使用下面的方式修改,但是一直不成功:
alter?user?'root'@'localhost'?IDENTIFIED?BY?'liuhehe';
報錯:
ERROR?1396?(HY000):?Operation?ALTER?USER?failed?for?'root'@'localhost'
后來到user表中查看到user=’root’的記錄,發現host列的值是’%’,將上面的sql修改成
mysql>?alter?user?'root'@'%'?IDENTIFIED?BY?'liuhehe'; Query?OK,?0?rows?affected?(0.03?sec)
執行成功??!
下面的方法,僅用于mysql5.7版本
方法4:忘記root密碼時
以windows為例:
1. 關閉正在運行的MySQL服務。
2. 打開DOS窗口,轉到mysqlbin目錄。
3. 輸入mysqld –skip-grant-tables 回車。–skip-grant-tables 的意思是啟動MySQL服務的時候跳過權限表認證。
4. 再開一個DOS窗口(因為剛才那個DOS窗口已經不能動了),轉到mysqlbin目錄。
5. 輸入mysql回車,如果成功,將出現MySQL提示符 >。
6. 連接權限數據庫: use mysql; 。
6. 改密碼:update user set password=password(“123″) where user=”root”;(別忘了最后加分號) 。
7. 刷新權限(必須步驟):flush privileges; 。
8. 退出 quit。
9. 注銷系統,再進入,使用用戶名root和剛才設置的新密碼123登錄。
注意:5.7版本下的mysql數據庫下已經沒有password這個字段了,password字段改成了authentication_string。
推薦學習:mysql視頻教程