MySQL 8.0 安裝后修改root@localhost的默認空密碼


問題:今天在操作了在red hat 8.3上使用centos 8 yum源替換后,安裝MySQL后,默認空密碼登錄,mysql  -uroot   -p  操作修改數據庫密碼按照老的辦法修改不成功。

安裝數據庫8.0,CentOS 8 安裝光盤直接提供了mysql-server 8.0,可以直接 yum 安裝就可以。

 

 

 想查看默認的初始密碼是多少,但是提示是空。

使用命令查看對應的密碼配置規則   SHOW VARIABLES LIKE 'validate_password%';(英文分號不可少) 顯示是 Empty set

不用密碼進入了MySQL,

root@localhost is created with an empty password ! Please consider switching off the --initialize-insecure option

([警告] [MY-010453] [服務器] root @ localhost使用空密碼創建!請考慮關閉--initialize-insecure選項)

解決辦法:密碼的生成方式交給Mysql的auth_socket插件了,可以編輯my.cnf文件,更改默認的身份認證插件。

vim  /etc/my.cnf

在[mysqld]中添加下邊的代碼
default_authentication_plugin=mysql_native_password

然后重啟MySQL

還有第二中解決辦法,進入MySQL后輸入命令操作:

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'newpassword';

FLUSH PRIVILEGES;

我是試了第一個辦法無效,使用第二個直接使用命令操作,設置密碼成功。

我的密碼設置比較簡單,有時密碼過於簡單也會報錯,ERROR:Your password does not satisfy the current policy  requirements(您的密碼不符合當前的政策要求)

對應的修改密碼就和老的修改辦法就可以了 ,進入mysql操作修改密碼

mysql> alter  user  root@'localhost'   identified   by     'newpassword';      ## identified  by    由...確定

或者直接在終端里操作修改,不進入MySQL修改密碼,

[root@centos7 ~]#mysqladmin    -uroot     -p    'oldpassword'      password     'newpassword'

把簡單的123456密碼修改下 mysql> alter user  root@'localhost'    identified   by  'mysql';  修改成功。 


免責聲明!

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



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