1. 程式人生 > 資料庫 >mysql安裝好後修改密碼以及修改對應使用者密碼外掛

mysql安裝好後修改密碼以及修改對應使用者密碼外掛

前提我的作業系統是centos7 mysql8.0

一) 進行修改MySQL的配置,無密碼登入
命令: sudo vim /etc/my.cnf 進入編輯 my.conf檔案
加入 skip-grant-tables 和 default-authentication-plugin=mysql_native_password(這個密碼外掛可以不用加 後面針對對應使用者修改即可)
1:我的系統用的是vi 編輯器 vi /etc/my.cnf 進入編輯 my.conf檔案
2.按下鍵盤i,切換insert模式(此操作必須切換英文輸入法)
3.在[mysqld]下面新增一行skip-grant-tables


在這裡插入圖片描述
4.按下ESC鍵,輸入:wq 然後回車退出編輯模式。:是指令符,w是儲存指令,q是退出指令
在這裡插入圖片描述

這一步參考文件
一:輔助參考 https://blog.csdn.net/li3839/article/details/85341161?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-1.channel_param&depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-1.channel_param

二:主要參考 https://zhuanlan.zhihu.com/p/141778941

二:重啟mysql
centos7命令 systemctl restart mysqld
centos6命令 小知識
檢視MySQL執行狀態:service mysqld status
開啟MySQL執行服務:service mysqld start
關閉MySQL與性服務:service mysqld stop
重啟MySQL與性服務:service mysqld restart
三:空密碼登入
mysql -u root -p //提示輸入密碼時直接敲回車
在這裡插入圖片描述
四、選擇資料庫mysql
use mysql;
五:將密碼置空


update user set authentication_string = ‘’ where user = ‘root’;

在這裡插入圖片描述六:退出
quit或者exit
在這裡插入圖片描述七:取出密碼登入重啟
修改mysql配置,刪掉步驟2的語句 skip-grant-tables 取出免密扥估
centos7命令 systemctl restart mysqld
八:修改密碼
進入資料庫
mysql -u root -p //提示輸入密碼時直接敲回車,剛剛已經將密碼置空了
修改密碼
ALTER USER ‘root’@’%’ IDENTIFIED WITH mysql_native_password BY ‘在這裡輸入你的密碼’; (注意:這裡修改密碼相容低版本客戶端 有的客戶端用的密碼外掛不一樣)
ALTER USER ‘root’@’%’ IDENTIFIED BY ‘在這裡輸入你的密碼’; (這是針對最新版的mysql8.0的密碼 後期為了相容還可能需要修改)
在這裡插入圖片描述

解決辦法:
set global validate_password.policy=0;
set global validate_password.length=1;
在這裡插入圖片描述

詳細介紹參考文件:https://blog.csdn.net/qq_36850813/article/details/83717828

最後用修改後的密碼正常登陸 為了讓window(也可以是其他ip主機客戶單) navicat連線linux上msyql 做了如下修改:

在這裡插入圖片描述
在這裡插入圖片描述

補充:在修改密碼的時候也可以用這個命令
ALTER USER USER() IDENTIFIED BY ‘12345678’;