第一步 登入mysql
## 登入方案1 ## # 5.7默認會生成root初始密碼文件 /root/.mysql_secret # 使用密碼文件中的初始密碼登入root身份,若成功則直接進行第三步 ## 登入方案2 ## # 若是應用未生成初始密碼文件,則咱們以安全模式啓動mysql,並跳過身份驗證,匿名登入 service mysqld stop mysqld_safe --skip-grant-tables & ## 登入方案3 ## # 若是應用未安裝mysqld_safe,則咱們編輯mysql配置,改成跳過身份驗證,匿名登入 # vim /etc/my.cnf, 添加以下一行 skip-grant-tables
第二步 初步更新密碼sql
# 若能root登入,則直接第三步 # 有時候不成功,仍然是匿名身份 # 匿名登入後, 執行以下sql語句, 初步更新root密碼 use user; update user set authentication_string=password("123456") where user="root"; flush privileges;
第三步 最終更新密碼shell
# 初步更新的密碼僅僅提供了登陸權限,其餘命令都沒有受權 # 用初步更新的root密碼登入root,而後執行如下命令 set Password=PASSWORD('new-password-here') #執行這一條後root才具備全部命令的權限 flush privileges; # 5.7增強了安全機制, 因此對密碼強制要求高強度,可編輯配置文件關閉 # vim /etc/my.cnf, 添加以下一行 validate-password=OFF
第四步 還原匿名登入配置,服務重啓vim