MySql8 0修改root密碼

2021-10-06 22:33:59 字數 1519 閱讀 7656

mysql 5.7 的版本,因為在user表中沒有password欄位,一直使用下邊的方式來修改root密碼

use mysql;

update

user

set authentication_string = password(「root」)

where

user

= 「root」;

現在要用mysql8.0.11版本,裝好mysql後用上邊方法修改密碼,一直報錯。後來去掉password()函式後,沒有報錯,但是輸入密碼時不對。

查閱後才知道在mysql 5.7.9以後廢棄了password欄位和password()函式;authentication_string:字段表示使用者密碼,而authentication_string欄位下只能是mysql加密後的41位字串密碼。所以需要用一下方式來修改root密碼:

alter

user

'root'@'localhost' identified by 'newpassword';

mysql 從8.0開始修改密碼有了變化,在user表加了字段authentication_string,修改密碼前先檢查authentication_string是否為空

1、如果不為空

use mysql;

update

user

set authentication_string=

''where

user

='root'

;--將字段置為空

alter

user

'root'@'localhost' identified by 'root';

--修改密碼為root

2、如果為空,直接修改

alter

user

'root'@'localhost' identified by 'root';

--修改密碼為root

如果出現如下錯誤

error 1290

(hy000): the mysql server is running with the --skip-grant-tables option so it cannot execute this statement

mysql>

grant

allprivilegeson*

.*to identified by

'123'

with

grant

option

;

需要執行

flush privileges

;

然後再執行

alter

user

'root'@'localhost' identified by 'root';

--修改密碼為root

MySQL8 0 修改root密碼

mysql 5.7 的版本,因為在user表中沒有password欄位,一直使用下邊的方式來修改root密碼 use mysql update user set authentication string password root where user root 現在要用mysql8.0.11版本...

MySQL 8 0修改密碼

最近系統公升級牽涉到mysql公升級,需要公升級到 mysql 8.0,涉及mysql使用者的密碼修改,特地記錄一下!mysql 8.0前修改密碼的官網連線 在mysql 8.0前,執行 set password password 新密碼 進行密碼修改,在mysql 8.0後,以上的方法使用root...

Mysql8 0 版本修改root密碼

今天在linux上面安裝mysql8.0成功後輸入命令嘗試無密碼登入 mysql uroot 結果顯示密碼錯誤,這和mysql5.6後的更新有關,系統會隨機分配乙個臨時密碼給你,這意味著需要輸入臨時密碼才能登入。晚上查資料輸入以下命令可以獲得臨時密碼 a temporary password is ...