Cách xóa mật khẩu root MySQL [đã đóng]


195

Tôi muốn xóa mật khẩu cho người dùng root trong localhost. Làm thế nào tôi có thể làm điều đó? Do nhầm lẫn tôi đã đặt mật khẩu của người dùng root. Đó là lý do tại sao phpmyadmin đưa ra lỗi:

#1045 - Access denied for user 'root'@'localhost' (using password: NO)


4
Tại sao không cấu hình phpMyAdmin của bạn để sử dụng mật khẩu root thay thế?
sisve

2
Tài liệu MySQL chứa các hướng dẫn về cách đặt lại mật khẩu gốc trong trường hợp bạn quên mật khẩu .
Michael Madsen

Lưu ý rằng bắt đầu với MySQL 5.7, mật khẩu gốc ngẫu nhiên được đặt theo mặc định và bạn không thể xóa mật khẩu mà không tắt validate_passwordplugin trước. Xem bài viết của tôi Xóa mật khẩu gốc MySQL hoặc ý chính này trực tiếp.
Benjamin

Câu trả lời:


360

Bạn cần đặt mật khẩu root@localhostđể trống. Có hai cách:

  1. Lệnh MySQL SET PASSWORD:

    SET PASSWORD FOR root@localhost=PASSWORD('');
  2. Sử dụng mysqladmincông cụ dòng lệnh :

    mysqladmin -u root -pType_in_your_current_password_here password ''

1
Làm thế nào tôi có thể thiết lập lại mật khẩu cho cơ sở dữ liệu vuông góc?
mật hoa

4
mysqladmin -u root -pciverse_password password '' là một cách khác để làm điều đó.
crackity_jones

7
Tôi cần phải làm mysqladmin -u root -p password ''sau đó nhập mật khẩu.
crizCraig

2
@crizCraig có thể là do mật khẩu của bạn không có CURRENTPASSWORD, đối số mật khẩu (không giống như các đối số khác) không có khoảng trắng sau nó. Nếu bạn bỏ qua một mật khẩu thì nó sẽ nhắc bạn lấy một ( doc )
Jason Sperske

3
@mOna thử cách này: 1- tắt mysql (tắt dịch vụ hoặc tắt dịch vụ); 2- tạo một tập tin có chứa SET PASSWORD FOR root@localhost=PASSWORD('');được gọi restore; 3- gọi mysqld_safe --init-file=path/to/restore; Cuối cùng đăng nhập và thay đổi lại mật khẩu với những gì bạn thích.
Dario

23

Tôi cũng đã trải qua vấn đề này,

Đầu tiên tôi đã thử đặt mật khẩu root của mình thành trống bằng lệnh:

SET PASSWORD FOR root@localhost=PASSWORD('');

Nhưng đừng vui, PHPMYADMIN sử dụng 127.0.0.1 chứ không phải localhost, tôi biết bạn sẽ nói cả hai đều giống nhau nhưng không phải vậy, hãy sử dụng lệnh được đề cập bên dưới và bạn đã hoàn thành.

SET PASSWORD FOR root@127.0.0.1=PASSWORD('');

Chỉ cần thay thế localhost bằng 127.0.0.1 và bạn đã hoàn thành.


3
THIẾT LẬP MẬT KHẨU CHO root @ localhost = PASSWORD (''); làm việc cho tôi
workdreamer
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.