本篇文章給大家介紹一下mysql忘記密碼的解決方案及修改密碼的三種方式。有一定的參考價值,有需要的朋友可以參考一下,希望對大家有所幫助。
1、修改密碼的三種方式
mysql用戶分為root用戶(超級管理員,擁有所有權(quán)限)和普通用戶,mysql服務(wù)器通過權(quán)限表來控制用戶對數(shù)據(jù)庫的訪問,這些權(quán)限表存于root用戶下的mysql數(shù)據(jù)庫中。
在使用mysql數(shù)據(jù)庫過程中,往往需要修改密碼的操作,下面介紹三種修改密碼的方式:
1.1、使用mysqladmin命令在命令行指定新密碼
mysqladmin -u root -p password '新密碼'
回車,將提醒你輸入原密碼
1.2、使用set語句
set password=password("新密碼")
這時需要重啟mysql服務(wù)器或使用flush privileges語句刷新權(quán)限表,使新密碼生效
1.3、修改user表
update mysql.user set authentication_string=PASSWORD("123456") where user="root" and host="localhost"
注意,mysql新版本用于存用戶密碼的字段名為authentication_string而不是 password,且新密碼必須使用password函數(shù)進(jìn)行加密
1.4、mysql8.0修改密碼語句
ALTER USER 'root'@'localhost' IDENTIFIED BY 'ok';
如遇報錯,先執(zhí)行flush privileges
2、忘記密碼怎么辦呢?
另外,不知道小伙伴們有沒有遇到過忘記密碼的情況呢?其實忘記密碼很容易解決,下面就介紹忘記密碼時的解決方案:
第一步:在命令行輸入net stop mysql命令關(guān)閉mysql服務(wù)
第二步:使用--skip-grant-tables選項啟動mysql服務(wù)(服務(wù)器將不加載權(quán)限判斷,任何用戶 都能訪問數(shù)據(jù)庫)
在命令行輸入
mysqld --skip-grant-tables
命令運行之后,用戶無法再輸入指令,此時如果在任務(wù)管理器中可以看到名稱為 mysqld的進(jìn)程,則表示可以用root用戶 登錄服務(wù)器了
第三步:打開另一個命令行窗口,輸入不加密碼的登錄命令
mysql -u root
登錄成功后可以使用update語句修改密碼
修改完成后,必須使用flush privileges語句刷新權(quán)限表,這樣新的密碼才能生效
第四步:將輸入mysqld --skip-grant-tables命令的命令行窗口關(guān)閉,接下來就可以使用新密碼登錄mysql服務(wù)器了
怎么樣,是不是覺得很簡單呢?以后忘記密碼再也不用愁了!