1.重置密碼的第一步就是跳過MySQL的密碼認證過程。
[client]
# 設定mysql用戶端預設字元集
default-character-set=utf8
[mysqld]
#skip-grant-tables 重置密碼,這裡是跳過登入的設定。之後操作,修改完my.ini檔案需要重新開機mysql服務。
# 設定3306端口
port = 3306
# 設定mysql的安裝目錄
basedir=D:\mysql-5.7.32-winx64
# 設定 mysql資料庫的資料的存放目錄,MySQL 8+ 不需要以下配置,系統自己生成即可,否則有可能報錯
# datadir=C:\\web\\sqldata
# 允許最大連接配接數
max_connections=20
# 服務端使用的字元集預設為8比特編碼的latin1字元集
character-set-server=utf8
# 建立新表時将使用的預設存儲引擎
default-storage-engine=INNODB
2.接下來就是用sql來修改root的密碼
mysql> use mysql;
mysql> update user set password=password("你的新密碼") where user="root";
mysql> flush privileges;
mysql> quit
到這裡root賬戶就已經重置成新的密碼了。
3.編輯my.cnf,去掉剛才添加的内容,然後重新開機MySQL。
4、新安裝的MySQL5.7,登入時提示密碼錯誤,安裝的時候并沒有更改密碼,後來通過免密碼登入的方式更改密碼,輸入update mysql.user set password=password('root') where user='root'時提示ERROR 1054 (42S22): Unknown column 'password' in 'field list',原來是mysql資料庫下已經沒有password這個字段了,password字段改成了
authentication_string