回覆列表
  • 1 # 開車以後

    這裡主要介紹在忘記MySQL的root密碼的情況下,使用--skip-grant-tables關閉MySQL伺服器的認證,從而可以重置root的密碼。MySQL版本為5.7。

    1、關閉MySQL

    2、使用--skip-grant-tables 和 --skip-networking 重啟MySQL

    --skip-grant-tables:此選項會讓MySQL伺服器跳過驗證步驟,允許所有使用者以匿名的方式,無需做密碼驗證直接登陸MySQL伺服器,並且擁有所有的操作許可權。

    --skip-networking:此選項會關門MySQL伺服器的遠端連線。這是因為以--skip-grant-tables方式啟動MySQL伺服器會有很大的安全隱患,為了降低風險,需要禁止遠端客戶端的連線。

    3、本地連線mysql

    --skip-grant-tables已經關閉MySQL伺服器的認證,以匿名方式,無需密碼即可連線。

    4、重置密碼

    在重置密碼前,先要過載授權表:

    MySQL 5.7.6+:

    MySQL 5.7.6以及之後的版本,使用ALTER USER語法來修改密碼。

    MySQL 5.7.5以及之前的版本

    MySQL 5.7.5以及之前的版本使用SET PASSWORD語法修改密碼。

    如果上面的方法修改密碼有錯,可以直接修改mysql.user表:

    注意:mysql5.7 user表裡已經去掉了password欄位,改為了authentication_string。

    5、重啟伺服器

    因為之前使用--skip-grant-tables啟動,所以需要重啟mysql伺服器,去掉--skip-grant-tables。

  • 中秋節和大豐收的關聯?
  • 生理期可以運動嗎?