Mysql忘記密碼後的解決辦法

[windows]
一、中止 mysql服務:打開命令行窗口CMD,Net stop mysql
二、用另一種方式啓動Mysql:在命令行進入到mysql的 安裝路徑下的bin目錄下使用mysqld-nt.exe啓動:mysqld-nt --skip-grant-tables
   注意:此時CMD窗口不能關閉。
三、進入Mysql:另外打開一個命入令行窗口,在bin目錄下執行mysql,此時無需輸入密碼便可進入。
>use mysql
>update user set password=password("new_pass") where user="root";
>flush privileges;
>exit
   注意:1)若是對sql語句熟悉的話,update這句就不用解釋了第一個User是表名、第二個User是表中的字段。第一個Password是表中的字段,第二個Password()是加密用的函數。new_pass是要更改的密碼。
        2)flush privileges能夠不用添加。可是若是添加了,必定要注意Host字段不能是Localhost。由於用了這個以後就不能用Localhost鏈接了。你能夠把這個字段改爲IP,或者通配符。
>update user set host="192.168.0.1" where user="root"
四、使用任務管理器,找到mysqld-nt的進程,結束進程!

五、從新啓動mysql服務,net start mysql 就能夠用新密碼登陸了。

[linux]
一、關閉Mysql: 若是 MySQL 正在運行,首先殺之 killall -TERM mysqld 
二、另外的方法啓動 MySQL :bin/safe_mysqld --skip-grant-tables & 
三、能夠不須要密碼就進入 MySQL 了。 
而後就是 
>use mysql
>update user set password=password("new_pass") where user="root";
java

>flush privileges; mysql

原文地址:http://www.javagg.com/diary/74057735 linux

相關文章
相關標籤/搜索