天天看點

在Linux環境下mysql的root密碼忘記解決方法

mysql版本不同,修改密碼的方法大同小異,但是有一定的差別:

mysql5.1

1.首先确認伺服器出于安全的狀态,也就是沒有人能夠任意地連接配接MySQL資料庫。

2.修改MySQL的登入設定:

# vi /etc/my.cnf

在[mysqld]的段中加上一句:skip-grant-tables 儲存并且退出

3.重新啟動mysqld service mysqld restart

4.登入并修改MySQL的root密碼

mysql> USE mysql ;

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

mysql> flush privileges ;

mysql> quit

5.将MySQL的登入設定修改回來

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

6.重新啟動mysqld

# /etc/init.d/mysqld restart   ( service mysqld restart )

mysql5.7

1.停掉資料庫: service mysql stop

2.運作:# mysqld_safe

--skip-grant-tables & 3.登陸資料庫: mysql -p 4.更改密碼: mysql>

update

mysql.

user

set

authentication_string=

password

(

'123qwe'

)

where

user

=

'root'

and

Host =

'localhost'

; 不過這裡要提示一下:新版本的資料庫下的user表裡面已經沒有password了 而是将加密後的使用者密碼存儲在authentication_string字段下面 flush privileges; quit 5. 重新開機下mysql : service mysql restart