linux下忘記mysql密碼的幾種找回方法

2022-04-30 16:15:12 字數 2418 閱讀 7570

方法一(先進入root許可權):

# /etc/init.d/mysql stop

# mysqld_safe --user=mysql --skip-grant-tables --skip-networking &

# mysql -u root

mysql> update user set password=password("newpassword") where user='root';

mysql> flush privileges;

mysql> quit

# /etc/init.d/mysql restart

# mysql -uroot -p

enter password: 《輸入新設的密碼newpassword>

mysql>

方法二:

直接使用/etc/mysql/debian.cnf檔案中[client]節提供的使用者名稱和密碼:

# mysql -udebian-sys-maint -p

enter password: 《輸入[client]節的密碼》

mysql> update user set password=password("newpassword")  where user=root;

mysql> flush privileges;

mysql> quit

# mysql -uroot -p

enter password: 《輸入新設的密碼newpassword>

mysql>

方法三:

這種方法我沒有進行過測試,因為我的root使用者預設密碼已經被我修改過了,那位有空測試一下,把結果告訴我,謝謝!!

# mysql -uroot -p

enter password: 《輸入/etc/mysql/debian.cnf檔案中[client]節提供的密碼》

方法四:

方法如下: 1, 關閉mysql服務 /etc/init.d/mysqld stop 2,使用 –skip-grant-tables選項啟動mysql服務,可以修 改/etc/inin.d/mysqld指令碼啟動位置增加此選項, vi /etc/init.d/mysqld

方法如下:

1, 關閉mysql服務

/etc/init.d/mysqld stop

2,使用 –skip-grant-tables選項啟動mysql服務,可以修 改/etc/inin.d/mysqld指令碼啟動位置增加此選項,

vi /etc/init.d/mysqld

在下面執行啟動的語句裡增加--skip-grant-tables

/usr/bin/mysqld_safe --skip-grant-tables --datadir="dat

adir

"−−s

ocke

t="'>datadir"−−socket="

datadir"−−socket="socketfile"

--log-error="err

logf

ile"

−−pi

d−fi

le="'>errlogfile"−−pid−file="

errlogfile"−−pid−file="mypidfile"

加入--skip-grant-tables的意思是啟動mysql服務的時候跳 過許可權表認證。啟動後,連線到mysql的root不需要口令

3,重新啟動mysql服務

/etc/init.d/mysqld start

4. 修改root使用者的密碼;

mysql> update mysql.user set password=password("123456")where user=root;

mysql> flush privileges;

mysql> quit

5. 重新啟動mysql,就可以使用 新密碼登入了。

mysql

mysql -u root –p

輸入密碼:123456

6,關閉mysql服務

/etc/init.d/mysqld stop

7, 重新修改第2步修改的/etc/init.d/mysqld,使其保持原來不變,也就是取消--skip-grant-tables語句

8,重新 啟動mysql服務

/etc/init.d/mysqld start

後記:新安裝的mysql是有密碼的,但是其實自動儲存在了某個資料夾中,我安裝的是mysql-server-5.6.35-1.el6.x86_64.rpm,rpm安裝方式,mysql的root密碼;預設的密碼存在:/root/.mysql_secret 這個資料夾中.///但是我就是打不開.so..,就當忘記密碼,如何找回mysql的初始的root密碼.找到的方法都是可行的,但是唯一不好的是可能我這個版本的設定newpasswd的時候新的密碼需要用雙引號,而原博主沒有.所以轉過來備自己使用.

linux 下mysql忘記密碼

1 首先確認伺服器出於安全的狀態,也就是沒有人能夠任意地連線mysql資料庫。因為在重新設定mysql的root密碼的期間,mysql資料庫完全出於沒有密碼保護的 狀態下,其他的使用者也可以任意地登入和修改mysql的資訊。可以採用將mysql對 外的埠封閉,並且停止apache以及所有的使用者程序...

Linux下Mysql忘記密碼

確認只有你能登入這台機器,因為過程中mysql出於無密碼登入狀態,任何有這台機器許可權的人都可能進來搞破壞,最好的做法就是拔掉網線。root centos6 vi etc my.cnf mysqld skip grant tables default character set utf8 datad...

linux下mysql忘記密碼

有可能你的系統沒有 safe mysqld 程式 比如我現在用的 ubuntu作業系統,apt get安裝的mysql 下面方法可以恢復 1.停止mysqld sudo etc init.d mysql stop 或者service mysqld stop 2.用以下命令啟動mysql,以不檢查許可...