linux忘記mysql初始化密碼解決方案


引言

  之前剛裝mysql的時候,根據教程安裝,然后初始化后沒有記住密碼,重啟服務器后無法登錄,於是今天就做個總結,順便了解一下如何解決mysql忘記密碼這個問題

方法

1、修改mysql的登錄設置

  在[mysqld]的段中加上一句:skip-grant-tables

  例如:vim /etc/my.cnf

  注:這里有一個坑,就是vim和vi的使用,我的就不能用vi。

  [mysqld]

  datadir=/var/lib/mysql

  socket=/var/lib/mysql/mysql.sock

  skip-grant-tables

  保存並且退出vim。

2、重啟mysql

  重新啟動mysql,例如我的mysql安裝在下面的路徑,這里可以參考我之前裝mysql的隨筆:https://www.cnblogs.com/cheneyboon/p/14679153.html

  # /etc/init.d/mysql restart

 3、登錄並修改mysql的密碼

  我這里直接使用的是mysql安裝路徑,同樣可以看我之前的隨筆找自己的對應位置

# /usr/local/mysql/bin/mysql

   然后依次輸入以下指令

mysql> USE mysql ;
mysql> update user set authentication_string=password("您要修改的密碼") where user="root";  # 這里的密碼可以自己選擇
mysql> flush privileges ;
mysql> quit

 注:這里有一個坑就是不能輸入下面命令進行修改密碼,原因:MySQL5.7版本后,password這個字段被改成 authentication_string

mysql> UPDATE user SET Password = password ( 'new-password' ) WHERE User = 'root' ;

4、將MySQL的登錄設置修改回來

  # vim /etc/my.cnf
  將剛才在[mysqld]的段中加上的skip-grant-tables刪除
  保存並且退出vim。

5、重新啟動mysqld
  # /etc/init.d/mysql restart
  Stopping MySQL: [ OK ]
  Starting MySQL: [ OK ]

 


免責聲明!

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



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