Mysql忘記密碼解決方案

2021-07-05 20:09:15 字數 1722 閱讀 2141

一、windows系統:

1、停止mysql服務,cmd開啟dos視窗,輸入 net stop mysql

2、在cmd命令列視窗,進入mysql安裝目錄 比如d:\program files\mysql-advanced-5.6.25-winx64\bin

示範命令:

輸入 d:回車,

輸入cd "d:\program files\mysql-advanced-5.6.25-winx64\bin"

這樣就可以進入mysql安裝目錄了.

3、進入mysql安全模式,即當mysql起來後,不用輸入密碼就能進入資料庫。

命令為: mysqld-nt --skip-grant-tables

4、重新開啟乙個cmd命令列視窗,輸入mysql -uroot -p,使用空密碼的方式登入mysql(不用輸入密碼,直接按回車)

5、輸入以下命令開始修改root使用者的密碼(注意:命令中mysql.user中間有個「點」)

mysql> update mysql.user set password=password('新密碼') where user='root';

6、重新整理許可權表

mysql> flush privileges;

7、退出

mysql> quit

mysql超級管理員賬號root已經重新設定好了,接下來 在任務管理器裡結束掉 mysql.exe 這個程序,重新啟動mysql即可!(也可以直接重新啟動伺服器)

mysql重新啟動後,就可以用新設定的root密碼登陸mysql了!

二、linux系統:

1、修改mysql的登入設定:

# vi /etc/my.cnf

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

例如:

[mysqld]

datadir=/var/lib/mysql

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

skip-grant-tables

儲存並且退出vi。

2、重新啟動mysqld

# /etc/init.d/mysqld restart

3、登入並修改mysql的root密碼

# /usr/bin/mysql

......type 'help;' or '\h' for help. type '\c' to clear the buffer.

mysql>use mysql ;

......database changed

mysql>update user set password = password ( 'new-password' ) where  user = 'root' ;

......rows matched: 2 changed: 0 warnings: 0

mysql> flush privileges ;

......query ok, 0 rows affected (0.01 sec)

mysql> quit

......bye

5.將mysql的登入設定修改回來

# vi /etc/my.cnf

將剛才在[mysqld]的段中加上的skip-grant-tables刪除

儲存並且退出vi。

6.重新啟動mysqld

# /etc/init.d/mysqld restart

MySQL忘記密碼解決方案

在windows下 開啟命令列視窗,停止mysql服務 net stop mysql 到mysql的安裝路徑啟動mysql,在bin目錄下使用mysqld nt.exe啟動,在命令列視窗執行 mysqld nt skip grant tables 然後另外開啟乙個命入令行視窗,執行mysql,此時無...

Mysql忘記密碼解決方案

在windows下 開啟命令列視窗,停止mysql服務 net stop mysql 到mysql的安裝路徑啟動mysql,在bin目錄下使用mysqld nt.exe啟動,在命令列視窗執行 mysqld nt skip grant tables 然後另外開啟乙個命入令行視窗,執行mysql,此時無...

Mysql忘記密碼解決方案

環境為ubuntu 1.停止mysql服務,service mysql stop 2.在 usr bin mysqld safe skip grant tables 來跳過授權 3.執行mysql u root p 進入後密碼不需要輸入直接回車就可以。4.修改root密碼 use mysql upd...