mysql-8.0.16-winx64/Linux修改root用戶密碼


 

連接數據庫等基礎操作請自行解決哈,本篇是重點記錄如何改密碼。

 

一、查詢用戶密碼:

查詢用戶密碼命令:

select  host,  user,  authentication_string  from  mysql.user ;

host允許用戶登錄的ip‘位置'%表示可以遠程;

user:當前數據庫的用戶名;

authentication_string用戶密碼(后面有提到此字段);

 

二、 設置(或修改)用戶密碼:

默認root密碼為空的話 ,下面使用navicat就無法連接(之前我裝的5.7好像還可以),所以這里需要修改root的密碼。

此乃關鍵一步。為此被坑了好長時間,后來查閱很多才知道在mysql 5.7.9以后廢棄了password字段和password()函數;

authentication_string:字段表示用戶密碼。

 

三、修改root密碼的步驟:

一、如果當前root用戶authentication_string字段下有內容,可先將其設置為空,不然直接進行二步驟。

update user set authentication_string='' where user='root';#密碼設置為空

 

二、使用ALTER修改root用戶密碼,方法為 ALTER user 'root'@'localhost' IDENTIFIED BY '新密碼'。如下:

alter user 'root'@'%' identified with mysql_native_password by 'xxxx';
ALTER  USER  'root'@'%' IDENTIFIED  WITH  mysql_native_password  BY  'mypwd#2019';

或者  alter user 'root'@'localhost' identified with mysql_native_password by 'xxxx';

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'mypwd#2019'

 

提示:

root@后面是user表的Host字段的內容,新安裝默認是localhost, 因為在這增加了遠程訪問,所以將localhost手動改成了%。

改完之后可執行:flush privileges;( 重新加載權限表 )
flush privileges;

 

注意:mysql8.0之后的版本,下面方法已經不適用。切記!!!
UPDATE user SET password=PASSWORD("新密碼") WHERE user='用戶名'; 
 
        

 

以上文字如有不妥之處,還請大家詳細指正並留言,方便今后大家共同成長;

在此也希望本篇博客能夠對大家有所幫助!

Tue Jul 09 2019 23:44:19 GMT

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM