mysql5 7 11修改root預設密碼

2022-03-28 18:18:15 字數 1500 閱讀 8679

知道 mysql 出了5.7了,並且網上說效能提高了一兩倍,於是在虛擬機上安裝了個 centos 7,在上面安裝 mysql 5.7

使用 yum 安裝很簡單,在能夠訪問網際網路的情況下,執行

yum list |grep mysql

找到可安裝的 mysql 軟體包,我要安裝的是 5.7的客戶端和服務端,基本上執行

yum install mysql-community-client

yum install mysql-community-server

就可以了

本文裡重點記錄root初始密碼的重置辦法

mysql5.7 算是安裝成功了,但是用之前版本介紹的登入方法都是不成功的:

1)預設 root 密碼為空,其實不為空,使用 mysql -u root -p 進行登入失敗

2)使用 mysqladmin 進行重置密碼,也不成功,因為它要求提供初始密碼,但是我本來就不知道初始密碼才來重置的,失敗

3)使用 mysqld_safe 進行重置,這個更不靠譜,在根目錄下執行 find -name mysqld_safe,根本找不到這個檔案

4)說在 /root/目錄下有乙個 .mysql_secret 初始化密碼檔案,這個也行,這個檔案根本就不存在,手動建立之後,使用 mysqladmin 啟動也不認這個密碼

其實想要重置 5.7 的密碼很簡單,就一層窗戶紙:

1、修改 /etc/my.cnf,在 [mysqld] 小節下新增一行:skip-grant-tables=1

這一行配置讓 mysqld 啟動時不對密碼進行驗證

2、重啟 mysqld 服務:systemctl restart mysqld

3、使用 root 使用者登入到 mysql:mysql -u root 

4、切換到mysql資料庫,更新 user 表:

update user set authentication_string = password('root'), password_expired = 'n', password_last_changed = now() where user = 'root';

在之前的版本中,密碼欄位的欄位名是 password,5.7版本改為了 authentication_string

5、退出 mysql,編輯 /etc/my.cnf 檔案,刪除 skip-grant-tables=1 的內容

6、重啟 mysqld 服務,再用新密碼登入即可

另外,mysql 5.7 在初始安裝後(centos7 作業系統)會生成隨機初始密碼,並在 /var/log/mysqld.log 中有記錄,可以通過 cat 命令檢視,找 password 關鍵字

找到密碼後,在本機以初始密碼登入,並且(也只能)通過 alter user 'root'@'localhost' identified by 'root' 命令,修改 root 使用者的密碼為 root,然後退出,重新以root使用者和剛設定的密碼進行登入即可。頂0

windows下Mysql5 7 11修改初始密碼

1.my default.ini 改名my.ini 在解壓的目錄下面複製my default.ini乙份改名字為 my.ini。2.開啟 windows 環境變數設定,新建變數名 mysql home 變數值為 mysql 安裝目錄路徑,在 環境變數 的 path 變數中新增 mysql home ...

MYSQL 5 7 11解壓版配置

一 二 修改my default.ini檔案,改名為my.ini 其他的地方不做修改 如下 these are commonly set,remove the and set as required.basedir d program files mysql 5.7.11 winx64 datadi...

mysql 5 7 11的安裝問題

1 建立並編寫配置檔案my.ini 注意修改相應的路徑版本目錄 mysql default character set utf8 mysqld port 3306 basedir d mysql mysql 5.7.11 winx64 datadir d mysql mysql 5.7.11 win...