忘記了MySQL密碼?

2021-06-04 18:23:42 字數 1020 閱讀 7817

如果你忘記了mysql密碼,如何重置它呢?

下面是錯誤答案:

首先停止mysql服務,然後使用skip-grant-tables引數啟動它:

shell> /etc/init.d/mysql stop

shell> mysqld_safe –skip-grant-tables &

此時無需授權就可以進入到mysql命令列,使用sql重置mysql密碼:

update mysql.user set password=password('…') where user='…' and host= '…';

flush privileges;

為什麼說它是錯誤答案?因為在單純使用skip-grant-tables引數啟動服務後,除非資料庫

伺服器遮蔽了外網訪問,否則除了自己,其它別有用心的人也可能訪問資料庫,儘管重置密碼所需的時間很短,但俗話說不怕賊偷就怕賊惦記著,任何紕漏都可能釀成大禍。

下面是正確答案:

關鍵點是:在使用skip-grant-tables引數的同時,還要加上skip-networking引數:

shell> mysqld_safe –skip-grant-tables –skip-networking &

接著使用sql重置密碼後,記得去掉skip-networking,以正常方式重啟mysql服務:

shell> /etc/init.d/mysqld restart

上面的方法需要重啟兩次服務,實際上還能更優雅一點,重啟一次即可:

update mysql.user set password=password('…') where user='…' and host= '…';

flush privileges;

接著使用init-file引數啟動mysql服務,

shell> /etc/init.d/mysql stop

shell> mysqld_safe –init-file=/path/to/init/file &

此時,密碼就已經重置了,最後別忘了刪除檔案內容,免得洩露密碼。

mysql密碼忘記了

1.停止mysql資料庫 etc init.d mysqld stop 2.執行如下命令 mysqld safe user mysql skip grant tables skip networking 3.使用root登入mysql資料庫 mysql u root mysql 4.更新root密碼...

忘記了 MySQL 的 root 密碼

如果忘記了 mysql 的 root 密碼,可以用以下方法重新設定 1.kill掉系統裡的mysql程序 2.用以下命令啟動mysql,以不檢查許可權的方式啟動 mysqld safe skip grant tables 3.然後用空密碼方式使用root使用者登入 mysql mysql u roo...

忘記了 MySQL 的 root 密碼

1.kill掉系統裡的mysql程序 2.用以下命令啟動mysql,以不檢查許可權的方式啟動 mysqld safe skip grant tables 3.然後用空密碼方式使用root使用者登入 mysql mysql u root 4.修改root使用者的密碼 mysql update mysq...