Quên mật khẩu MySQL thì phải làm sao?

Trang chủ   /   Bảo trì máy tính tại Hà Nội   /   Quên mật khẩu MySQL thì phải làm sao?
Reset MySQL Password
Không nhớ mật khẩu MySQL, toàn ghi chú rồi copy - paste, giờ lỡ tay làm mất cái file lưu pass nên lại phải reset lại mật khẩu. Làm cái note này để ghi chú lại. 

Yêu cầu để có thể thực hiện:

Bạn phải có quyền thực thi commandline trên hệ thống (1 cách nào đó trực tiếp hoặc gián tiếp) còn nếu không có quyền này thì khỏi cần đọc tiếp. (Remote qua Telnet, SSH, Netcat… hay cái gì đại loại thế - hoặc ngồi trực tiếp với hệ thống)

Với Máy chạy Windows
Bước 1. Tắt process MySQL đang chạy (nếu có)

Kill Process (nếu bạn ko chạy nó như một service)

Stop Service: Start -> Run -> services.msc. Tìm đến service mysql -> Stop. Hoặc gõ lệnh thông qua commandline:

  net stop mysql
Bước 2. Tạo 2 file

Tạo file config.txt có nội dung vào trong ổ C (hoặc nơi nào đó tùy bạn):
  UPDATE mysql.user SET Password=PASSWORD('newpass') WHERE User='root';
  FLUSH PRIVILEGES;
Tạo file run.bat có nội dung như hướng dẫn sau:

Nếu bạn cài MySQL thông qua MySQL Installation Wizard
set MysqlPath=C:\Program Files\MySQL\MySQL Server 5.1
cd %MysqlPath%\bin
mysqld --defaults-file="%MysqlPath%\\my.ini" --init-file=C:\\config.txt
Nếu sử dụng MySQL dạng portable như trong XAMMP, WAMP Trường hợp này lưu luôn file run.bat này vào thư mục chứa file thực thi của MySQL cho gọn. text mysqld-nt --init-file=C:\mysql-init.txt  Xong, chạy file run.bat này. Password sẽ được đưa về thành newpass - bạn có thể đổi thành bất cứ thứ gì bạn muốn. :D
Một cách khác Gọn hơn chút

Đầu tiên là phải tắt service MySQL như cách trên.

Muốn sử dụng dòng lệnh cho bờ rồ thì làm như sau: Change directory đến thư mục có file thực thi của MySQL rồi gõ lệnh:

  cd C:\Program Files\MySQL\MySQL Server 5.0\bin
  mysqld-nt –skip-grant-tables
Giữ nguyên cửa sổ command này, mở 1 cửa sổ command line khác, cũng change directory về giống cửa sổ trước, gõ lệnh:
  mysql -uroot
Sau khi đã login được vào MySQL, tiến hành đổi mật khẩu bằng các câu lệnh sau:
  mysql>use mysql;
  mysql>update user set Password=PASSWORD(’new_pass’) WHERE User=’root’;
  mysql>flush privileges;
  Ok done.
  +mysql>exit
=> đến đây thì đã xong, mật khẩu đã được reset thành new_pass.

Restart lại service MySQL để tiếp tục sử dụng.

Bài viết liên quan