萬盛學電腦網

 萬盛學電腦網 >> 數據庫 >> mysql教程 >> MySQL根用戶root密碼忘記後的處理方法

MySQL根用戶root密碼忘記後的處理方法

  Windows平台下的步驟

  1.以管理員的身份登錄到windows系統

  2.用windows服務管理工具或任務管理器來停止MySQL服務

  3.建立一個單行的文本文件,保存為c:mysqlpwdhf.txt,

  內容是SET PASSWORD FOR 'root'@'localhost' = PASSWORD('MyNewPassword');

  4.打開一個控制台窗口,得到DOS命令提示符

  5.假設你的MySQL主目錄是C:/mysql/bin,

  則運行c:mysqlbinmysqld-nt --init-file=c:mysqlpwdhf.txt,

  如果是用安裝精靈安裝的MySQL數據庫服務器,則需要通過服務管理工具來做改動,

  需要找到並添加默認設置文件,

  然後運行mysqld-nt --defaults-file="pathmy.ini" --init-file=c:mysqlpwdhf.txt

  6.停止MySQL數據庫服務,然後再重新以正常模式啟動MYSQL

  7.可以正常登錄到服務器.

  Unix環境下的步驟

  1.以root或啟動mysqld進程的用戶身份登錄到系統

  2.找到並定位包含Mysql服務進程號的文件.pid,該文件一般可能

  /var/lib/mysql/,/var/run/mysqld/,/usr/local/mysql/data/中,

  文件名一般是“機器名.pid”的格式。在殼下使用命令

  kill 'cat /mysql-data-directory//host-name.pid'來結束mysql服務進程

  3.建立一個單行文本文件,可以任意命名,假設是mysql-init,

  保存在用戶主目錄~下就可以,

  文件內容是SET PASSWORD FOR 'root'@'localhost' = PASSWORD('MyNewPassword');

  4.重新帶選項啟動mysql,具體命令為mysqld_safe --init-file=~/mysql-init &,

  正常後應該刪除mysql-init文件

  5.可以用新密碼連接數據庫。

  通用的解決辦法:

  -使用客戶端交互工具mysql來設置,步驟如下:

  1.停止mysql服務,並重新以--skip-grand-table --user=root

  選項來啟動mysql服務(windows下可以省略--user=root選項)

  2.用客戶端交互工具mysql連接服務器,shell>mysql -u root

  3.在客戶端交互工具mysql中執行下列語句:

  mysql> UPDATE mysql.user SET Password=PASSWORD('newpwd')

  -> WHERE User='root';

  mysql> FLUSH PRIVILEGES;

  4.可以用newpwd作為密碼來登錄服務器。

copyright © 萬盛學電腦網 all rights reserved