最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

MySQL root用戶密碼忘記的兩種情況及解決方案

 更新時間:2026年03月20日 09:59:24   作者:xgstb  
在使用MySQL數據庫的的過程中,不可避免的會出現忘記密碼的現象,普通用戶的密碼如果忘記,可以用更高權限的用戶進行重置,但是如果root用戶的密碼忘記了,那這個方法就行不通了,本文介紹2種在忘記root用戶用戶密碼的情況下,如何進行重設,需要的朋友可以參考下

引言

在使用MySQL數據庫的的過程中,不可避免的會出現忘記密碼的現象。普通用戶的密碼如果忘記,可以用更高權限的用戶(例如root)進行重置。但是如果root用戶的密碼忘記了,由于root用戶本身就是最高權限,那這個方法就行不通了。本文介紹2種在忘記root用戶用戶密碼的情況下,如何進行重設。

一、使用–init-file參數重設

由于忘記了root密碼,我們是無法通過root用戶連接到數據庫的,因此也無法通過客戶端執(zhí)行alter user或set password命令來重置密碼。MySQL提供了init-file參數,在啟動時可以讀取文件,我們將修改root用戶密碼的SQL放在文件中,通過重啟來執(zhí)行修改密碼命令。

假設我想要將root密碼修改為’abc123’,先測試一下,密碼是不對的:

mysql -uroot -pabc123

1.1 停止mysql進程

下面演示的是通過kill命令殺死m(xù)ysqld進程,如果可以正常停止也可以。
首先通過ps -ef | grep mysqld 查詢mysql數據庫的進程號:

ps -ef | grep mysqld

這里顯示數據庫相關的進程有2個(第3個是grep命令),由于我是通過mysqld_safe腳本啟動的數據庫,因此有一個額外的守護進程:

進程號為23619的mysqld_safe守護進程,負責監(jiān)控mysqld的狀態(tài)
進程號為24846的mysqld進程,這個是數據庫服務進程(它的父進程號23619)

查詢到進程號后,使用kill命令依次將mysqld_safe和mysqld殺死,注意要先殺mysqld_safe,如果先殺mysqld,那么守護進程檢測到mysqld進程掛了,會立刻將mysqld重新啟動:

kill -9 23619
kill -9 24846

如果只有一個mysqld進程,那么只要將其殺掉即可。

1.2 創(chuàng)建初始化文件

創(chuàng)建一個文本文件,名稱隨意(這里是reset_password.sql),里面寫上更改root密碼的SQL:

alter user 'root'@'localhost' identified by 'abc123';

文件創(chuàng)建后給mysql用戶增加讀取權限(通常使用操作系統(tǒng)的mysql用戶來啟動數據庫進程)

chmod a+r reset_password.sql

1.3 使用init-file參數重啟數據庫

使用–init-file=/root/reset_password.sql 參數啟動數據庫,啟動時會自動執(zhí)行文件種的密碼修改SQL:

mysqld_safe --init-file=/root/reset_password.sql &
mysql -uroot -pabc123

可以看到啟動后,root用戶的密碼已經成功被修改為’abc123’,最后將reset_password.sql文件刪除即可。

二、使用–skip-grant-tables參數重設

MySQL的skip-grant-tables參數可以指定在啟動時忽略權限認證,這意味著任何用戶都可以不用密碼登陸數據庫,并且具有所有權限,這是一個危險的狀態(tài)。因此當使用skip-grant-tables啟動時,MySQL會自動啟用skip-networking參數,禁止所有遠程連接。

2.1 停止mysqld進程

停止或殺掉mysqld進程,參照上一節(jié)內容。

2.2 使用skip-grant-tables重啟數據庫

使用skip-grant-tables參數啟動數據庫,并使用root用戶登陸:

mysqld_safe --skip-grant-tables &
mysql -uroot -p

這里提示了Enter password:,但實際是不需要輸入密碼的,直接回車便可登陸。

2.3 修改root密碼

加載權限表并修改root密碼,這里將密碼修改為abc456:

flush privileges;
alter user 'root'@'localhost' identified by 'abc456';

2.4 重啟數據庫

使用正常狀態(tài)重啟數據庫

mysqladmin shutdown
mysqld_safe &
mysql -uroot -pabc456

可以看到root用戶的密碼成功被修改為abc456

到此這篇關于MySQL root用戶密碼忘記的兩種情況及解決方案的文章就介紹到這了,更多相關MySQL root用戶密碼忘記內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

最新評論

麟游县| 怀远县| 饶阳县| 建水县| 阳春市| 璧山县| 唐海县| 青铜峡市| 桃江县| 沾益县| 顺义区| 庆安县| 镇江市| 中卫市| 武清区| 卓尼县| 抚顺市| 尼木县| 新晃| 天全县| 扶绥县| 兴山县| 东城区| 肥东县| 靖边县| 福泉市| 赤峰市| 五指山市| 凉城县| 石渠县| 曲靖市| 景谷| 余姚市| 曲阜市| 雷州市| 乐至县| 泾源县| 宕昌县| 太湖县| 宁德市| 东光县|