一鍵清空(重置)本地MySQL8.0密碼腳本
之前我開發(fā)了一個爆破MySQL簡單密碼的Python腳本,但是對于MySQL就安裝在自己機器上這種情況根本沒有必要,只要我們擁有關(guān)閉和啟動MySQL服務進程的權(quán)限,我們就可以直接重設(shè)密碼。
具體原理:
- 結(jié)束MySQL服務進程
- 以跳過權(quán)限表檢查的方式啟動MySQL服務進程
- 修改存儲用戶密碼的表,指定root本地用戶的密碼為空
- 結(jié)束MySQL服務進程
- 以正常方式啟動MySQL服務進程
注意:命令行方式操作服務進程需要管理員權(quán)限
最終編寫如下cmd腳本(保存文件名后綴為.cmd):
TASKKILL /F /IM mysqld.exe /T start D:\software\mysql-8.0.25-winx64\bin\mysqld --console --skip-grant-tables --shared-memory echo UPDATE mysql.user SET authentication_string='' WHERE user='root' and host='localhost';>t.sql TIMEOUT /T 2 D:\software\mysql-8.0.25-winx64\bin\mysql<t.sql TASKKILL /F /IM mysqld.exe /T net start mysql8.0
以管理員身份運行以上腳本,即可清空本地MySQL的密碼:
之所以寫D:\software\mysql-8.0.25-winx64\bin\
這種全路徑形式是因為我沒有將MySQL的bin目錄加入path環(huán)境變量,若你的電腦已經(jīng)將該目錄加入環(huán)境則可以去掉,否則修改為你的MySQL安裝位置的bin目錄。
net start mysql8.0
啟動了名稱為mysql8.0的服務。這是我在前面安裝MySQL8.0時這么命名服務名稱的,詳見:不卸載原有mysql直接安裝mysql8.0
需要更換為你的MySQL注冊的服務名稱。若沒有注冊服務,則需要按照你平時啟動MySQL服務的方法啟動。
執(zhí)行完以上腳本后就可以免密登錄MySQL了,登錄后就可以執(zhí)行以下命令,修改MySQL為任意密碼(這里修改密碼為123456):
ALTER user 'root'@'localhost' IDENTIFIED BY '123456';
然后重啟MySQL服務使密碼生效:
net start mysql8.0 net stop mysql8.0
其實我們也可以腳本中自行進行管理員權(quán)限提權(quán),這樣就可以直接雙擊腳本運行。
只需在腳本開頭加上如下這行命令:
%1 mshta vbscript:CreateObject("Shell.Application").ShellExecute("cmd.exe","/c %~s0 ::","","runas",1)(window.close)&&exit
對于MySQL 5.x版本,重置腳本更加簡單,可以直接在腳本中設(shè)置MySQL密碼。
參考腳本內(nèi)容為:
TASKKILL /F /IM mysqld.exe /T start mysqld --skip-grant-tables echo ALTER USER 'root'@'localhost' IDENTIFIED BY '123456';>t.sql TIMEOUT /T 2 mysql<t.sql TASKKILL /F /IM mysqld.exe /T net start MySQL
根據(jù)實際情況修改即可。
到此這篇關(guān)于一鍵清空(重置)本地MySQL8.0密碼腳本的文章就介紹到這了,更多相關(guān)清空MySQL8.0密碼內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
MySQL5.7.24版本的數(shù)據(jù)庫安裝過程圖文詳解
這篇文章主要介紹了MySQL5.7.24版本的數(shù)據(jù)庫安裝過程,需要的朋友可以參考下2018-11-11MySql 字符串中提取數(shù)字的實現(xiàn)示例
在MySQL中,有時需要從字符串中提取數(shù)字,本文就來介紹一下MySql 字符串中提取數(shù)字的實現(xiàn)示例,具有一定的參考價值,感興趣的可以了解一下2023-09-09Mysql誤操作后利用binlog2sql快速回滾的方法詳解
相信每個和數(shù)據(jù)庫打交道的程序員都會碰一個問題,MySQL誤操作后如何快速回滾?那么下面這篇文章主要給大家介紹了關(guān)于Mysql誤操作后利用binlog2sql快速回滾的相關(guān)資料,文中介紹的非常詳細,需要的朋友可以參考下。2017-07-07