MySQL9.0默認路徑安裝下重置root密碼
問題描述
MySQL采用默認安裝路徑,忘記密碼情況下重置root用戶密碼
環(huán)境描述
- MySQL版本
> mysql --version mysql Ver 9.0.1 for Win64 on x86_64 (MySQL Community Server - GPL)
- 配置文件my.ini路徑
C:\ProgramData\MySQL\MySQL Server 9.0\my.ini - data目錄路徑
C:\ProgramData\MySQL\MySQL Server 9.0\Data
解決方法
- 停止MySQL服務(wù)
net stop MySQL90 # 該命令需“管理員”權(quán)限。也可以在“服務(wù)”中停止


- 以管理員身份運行cmd
mysqld --defaults-file="C:/ProgramData/MySQL/MySQL Server 9.0/my.ini" --console --skip-grant-tables --shared-memory
P.s.
1.defaults-file參數(shù)要放在第一項
2.如果mysqld命令無法識別,可以將mysql安裝路徑下的bin目錄加入環(huán)境變量中;或者在cmd中將路徑切換到bin目錄下再執(zhí)行命令
進入“跳過授權(quán)表”模式。服務(wù)器將不加載權(quán)限判斷,任何用戶都能訪問數(shù)據(jù)庫,但不能輸入指令了。

上一個cmd窗口先放一旁,另開個cmd窗口,輸入
mysql進入服務(wù)MySQL中輸入命令:
# 修改root用戶"authentication_string"字段為 空 mysql> update mysql.user set authentication_string="" where user="root"; # 刷新權(quán)限 mysql> flush privileges; # 退出 mysql> \q

5.第一個cmd窗口中,使用ctrl+c中斷“跳過授權(quán)表”模式,隨后啟動mysql服務(wù)
Ctrl + c net start MySQL90

- 使用空密碼進行登錄,然后使用
alter語句更新密碼,刷新權(quán)限,退出
mysql -uroot -p # 修改密碼,示例為:123456 mysql> alter user 'root'@'localhost' identified by '123456'; mysql> flush privileges; mysql> \q
- 使用新密碼重新登陸即可
正常模式下修改密碼
正常模式下使用alter語句就可以修改用戶密碼
mysql> alter user '用戶名'@'主機范圍' identified by '新密碼'; mysql> flush privileges;
報錯原因
- ‘auto.cnf’ not found(Permission denied)
報錯原因:
第②步中未以管理員權(quán)限運行cmd就執(zhí)行mysqld命令,導(dǎo)致權(quán)限不足

2. unknown variable ‘defaults-file’
報錯原因:
defaults-file參數(shù)要放在第一項

到此這篇關(guān)于MySQL9.0默認路徑安裝下重置root密碼的文章就介紹到這了,更多相關(guān)MySQL9.0 安裝重置root密碼內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
MySQL Left JOIN時指定NULL列返回特定值詳解
我們有時會有這樣的應(yīng)用,需要在sql的left join時,需要使值為NULL的列不返回NULL而時某個特定的值,比如0。這個時候,用is_null(field,0)是行不通的,會報錯的,可以用ifnull實現(xiàn),但是COALESE似乎更符合標準2013-07-07
linux配置mysql數(shù)據(jù)庫遠程連接失敗的解決方法
這篇文章主要為大家詳細介紹了linux配置mysql數(shù)據(jù)庫遠程連接失敗的解決方法,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-06-06
MySQL InnoDB行記錄存儲結(jié)構(gòu)分析
工作中我們基本上都是用MySQL的InnoDB存儲引擎,但是大家有去了解過它的底層存儲結(jié)構(gòu)嗎,想必絕大部分人不知道或者說不知道怎么查相關(guān)知識,剛好來看這篇文章就對了2023-07-07
MySQL使用GROUP?BY使用技巧和注意事項總結(jié)
GROUP?BY?子句是?在MySQL?中用于將查詢結(jié)果按照指定的列或表達式進行分組的關(guān)鍵字,它通常與聚合函數(shù)一起使用,能夠?qū)γ總€分組進行統(tǒng)計或計算,本文給大家總結(jié)了MySQL使用GROUP?BY使用技巧和注意事項,需要的朋友可以參考下2024-05-05
MySQL 中查詢 VARCHAR 類型 JSON 數(shù)據(jù)的問題記錄
在數(shù)據(jù)庫設(shè)計中,有時我們會將 JSON 數(shù)據(jù)存儲在 VARCHAR 或 TEXT 類型字段中,本文將詳細介紹如何在 MySQL 中有效查詢存儲為 VARCHAR 類型的 JSON 數(shù)據(jù),感興趣的朋友一起看看吧2025-04-04
SQL判斷數(shù)據(jù)存不存在的正確做法(99%的人還在寫錯!)
業(yè)務(wù)代碼中,需要根據(jù)一個或多個條件,查詢是否存在記錄,不關(guān)心有多少條記錄,這篇文章主要介紹了SQL判斷數(shù)據(jù)存不存在的正確做法,文中通過代碼介紹的非常詳細,需要的朋友可以參考下2026-04-04
詳解MySQL中DROP,TRUNCATE 和DELETE的區(qū)別實現(xiàn)mysql從零開始
注意:這里說的delete是指不帶where子句的delete語句 相同點: truncate和不帶where子句的delete, 以及drop都會刪除表內(nèi)的數(shù)據(jù)2008-04-04

