Đầu tiên các bạn đều phải stop Mysql service [ Administrative Tools >>> Services ]
Phương pháp 1 [skip grant tables]
- Mở Command Prompt [cmd] và tìm đến thư mục bin nơi cài đặt MySQL VD:C:/Program Files/Mysql/binbin nơi cài đặt MySQL VD:C:/Program Files/Mysql/bin
- Chạy lệnh
mysqld.exe -u root –skip-grant-tables
- Tương tự như trên, bạn tiếp tục mở command prompt mới và nhập lệnh
mysql
cũng ngay tại đường dẫn thư mục cài đặt MySQL
use mysql
[Command này để kết nối MySQL server]
- Tiếp theo chúng ta sẽ khôi phục MySQL Root Password bằng lệnh thông dụng :
UPDATE user SET Password = PASSWORD[‘mat_khau_moi_cua_ban’] WHERE User = ‘root’;
- Start lại MySQL service.
Phương pháp 2 [init file]
- Mở NotePad trên máy chủ và tạo ra một text file như sau:
UPDATE mysql.user SET Password=PASSWORD[‘mat_khau_moi_cua_ban’] WHERE User=’root’; FLUSH PRIVILEGES;
- Lưu file trên vào một vị trí dễ nhớ [ví dụ như C: ] với tên: mysql-init.txtmysql-init.txt
- Mở Command Prompt [cmd] và khởi động MySQL với lựa chọn init-file [ lưu ý thay đổi đường dẫn của mysqld đến vị trí thực tế trên máy chủ VD:C:/Mysql/bin] :
C:mysqlbinmysqld –init-file=C:\mysql-init.txt
Nếu MySQL đã được cài đặt bằng cách sử dụng MySQL Installation Wizard , thì bạn có thể sử dụng lệnh sau :
C:> "C:Program FilesMySQLMySQL Server 5.0binmysqld-nt.exe" --defaults-file="C:\Program Files\MySQL\MySQL Server 5.0\my.ini" --init-file=C:\mysql-init.txt
- Stop MySQL [ từ Services ] và sau đó Start lại một lần nữa , đồng thời xóa file mysql-init.txt cho mục đích an toàn hệ thống [ vì file có lưu mật khẩu ]mysql-init.txt cho mục đích an toàn hệ thống [ vì file có lưu mật khẩu ]
Tip : trường hợp các bạn không thể xác định chính xác thư mục cài đặt MySQL thì hãy tìm kiếm tại Services Manager. Từ Administrative Tools >>> Services >>> Properties MySQL Server >>> Path to executable. : trường hợp các bạn không thể xác định chính xác thư mục cài đặt MySQL thì hãy tìm kiếm tại Services Manager. Từ Administrative Tools >>> Services >>> Properties MySQL Server >>> Path to executable.
Bây giờ bạn có thể đăng nhập bằng mật khẩu mới vừa thiết lập.
Chúc các bạn thành công!
B.3.3.2 & nbsp; Cách đặt lại mật khẩu gốc
Nếu bạn chưa bao giờ gán mật khẩu
mysql6 cho MySQL, máy chủ hoàn toàn không yêu cầu mật khẩu để kết nối là
mysql6. Tuy nhiên, điều này là không an toàn. Để biết hướng dẫn về việc gán mật khẩu, xem Phần & NBSP; 2.10.4, Bảo mật tài khoản MySQL ban đầu.
Nếu bạn biết mật khẩu
mysql6 và muốn thay đổi nó, hãy xem Phần & NBSP; 13.7.1.1, Tuyên bố người dùng thay đổi, và Phần & NBSP; 13.7.1.10
Nếu bạn đã chỉ định mật khẩu
mysql6 trước đây nhưng đã quên nó, bạn có thể gán một mật khẩu mới. Các phần sau đây cung cấp các hướng dẫn cho các hệ thống Windows và UNIX và UNIX, cũng như các hướng dẫn chung áp dụng cho bất kỳ hệ thống nào.B.3.3.2.1 & nbsp; Đặt lại mật khẩu gốc: Hệ thống Windows
Trên Windows, sử dụng quy trình sau để đặt lại mật khẩu cho tài khoản MySQL
use mysql0. Để thay đổi mật khẩu cho tài khoản
mysql6 bằng phần tên máy chủ khác, hãy sửa đổi các hướng dẫn để sử dụng tên máy chủ đó.
Đăng nhập vào hệ thống của bạn với tư cách là quản trị viên.
Dừng máy chủ MySQL nếu nó đang chạy. Đối với một máy chủ đang chạy như một dịch vụ Windows, hãy truy cập Trình quản lý dịch vụ: Từ menu, chọn, sau đó,. Tìm dịch vụ MySQL trong danh sách và dừng nó.
Nếu máy chủ của bạn không chạy như một dịch vụ, bạn có thể cần sử dụng trình quản lý tác vụ để buộc nó dừng lại.
Tạo một tệp văn bản chứa câu lệnh Ghi nhận mật khẩu trên một dòng. Thay thế mật khẩu bằng mật khẩu mà bạn muốn sử dụng.
ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPass';
Lưu các tập tin. Ví dụ này giả định rằng bạn đặt tên cho tệp
use mysql
2.Mở cửa sổ Bảng điều khiển để đến dấu nhắc lệnh: Từ menu, chọn, sau đó nhập CMD làm lệnh sẽ được chạy.cmd as the command to be run.
Bắt đầu máy chủ MySQL với biến hệ thống
use mysql
3 được đặt để đặt tên cho tệp [lưu ý rằng dấu gạch chéo ngược trong giá trị tùy chọn được nhân đôi]:C:\> cd "C:\Program Files\MySQL\MySQL Server 8.0\bin" C:\> mysqld --init-file=C:\\mysql-init.txt
Nếu bạn đã cài đặt MySQL đến một vị trí khác, hãy điều chỉnh lệnh CD cho phù hợp.cd command accordingly.
Máy chủ thực thi nội dung của tệp được đặt tên bởi biến hệ thống
use mysql
3 khi khởi động, thay đổi mật khẩu tài khoảnuse mysql
0.Để có đầu ra máy chủ xuất hiện trong cửa sổ Bảng điều khiển thay vì trong tệp nhật ký, hãy thêm tùy chọn
use mysql
6 vào lệnh MySQLD.mysqld command.Nếu bạn đã cài đặt MySQL bằng Trình hướng dẫn cài đặt MySQL, bạn có thể cần chỉ định tùy chọn
use mysql
7. Ví dụ:C:\> mysqld --defaults-file="C:\\ProgramData\\MySQL\\MySQL Server 8.0\\my.ini" --init-file=C:\\mysql-init.txt
Cài đặt
use mysql
7 thích hợp có thể được tìm thấy bằng cách sử dụng Trình quản lý dịch vụ: từ menu, sau đó, chọn, sau đó. Tìm dịch vụ MySQL trong danh sách, nhấp chuột phải vào và chọn tùy chọnuse mysql
9. TrườngUPDATE user SET Password = PASSWORD[‘mat_khau_moi_cua_ban’] WHERE User = ‘root’;
0 chứa cài đặtuse mysql
7.Sau khi máy chủ bắt đầu thành công, xóa
use mysql
2.
Bây giờ bạn sẽ có thể kết nối với máy chủ MySQL dưới dạng
mysql6 bằng cách sử dụng mật khẩu mới. Dừng máy chủ MySQL và khởi động lại bình thường. Nếu bạn chạy máy chủ dưới dạng dịch vụ, hãy khởi động từ cửa sổ Windows Services. Nếu bạn khởi động máy chủ theo cách thủ công, hãy sử dụng bất kỳ lệnh nào bạn thường sử dụng.B.3.3.2.2 & nbsp; Đặt lại mật khẩu gốc: Hệ thống UNIX và UNIX giống như
Trên Unix, sử dụng quy trình sau để đặt lại mật khẩu cho tài khoản MySQL
use mysql0. Để thay đổi mật khẩu cho tài khoản
mysql6 bằng phần tên máy chủ khác, hãy sửa đổi các hướng dẫn để sử dụng tên máy chủ đó.
Các hướng dẫn giả định rằng bạn khởi động máy chủ MySQL từ tài khoản đăng nhập UNIX mà bạn thường sử dụng để chạy nó. Ví dụ: nếu bạn chạy máy chủ bằng tài khoản đăng nhập
UPDATE user SET Password = PASSWORD[‘mat_khau_moi_cua_ban’] WHERE User = ‘root’;6, bạn nên đăng nhập dưới dạng
UPDATE user SET Password = PASSWORD[‘mat_khau_moi_cua_ban’] WHERE User = ‘root’;6 trước khi sử dụng các hướng dẫn. Ngoài ra, bạn có thể đăng nhập dưới dạng
mysql6, nhưng trong trường hợp này, bạn phải bắt đầu MySQLD với tùy chọn
UPDATE user SET Password = PASSWORD[‘mat_khau_moi_cua_ban’] WHERE User = ‘root’;9. Nếu bạn khởi động máy chủ dưới dạng
mysql6 mà không cần sử dụng
UPDATE user SET Password = PASSWORD[‘mat_khau_moi_cua_ban’] WHERE User = ‘root’;9, máy chủ có thể tạo các tệp ____ 16 thuộc sở hữu trong thư mục dữ liệu, chẳng hạn như tệp nhật ký và chúng có thể gây ra sự cố liên quan đến quyền cho các khởi động máy chủ trong tương lai. Nếu điều đó xảy ra, bạn phải thay đổi quyền sở hữu của các tệp thành
UPDATE user SET Password = PASSWORD[‘mat_khau_moi_cua_ban’] WHERE User = ‘root’;6 hoặc xóa chúng.must start mysqld with the
UPDATE user SET Password = PASSWORD[‘mat_khau_moi_cua_ban’] WHERE User = ‘root’;9 option. If you start the server as
mysql6 without using
UPDATE user SET Password = PASSWORD[‘mat_khau_moi_cua_ban’] WHERE User = ‘root’;9, the server may create
mysql6-owned files in the data directory, such as log files, and these may cause permission-related problems for future server startups. If that happens, you must either change the ownership of the files to
UPDATE user SET Password = PASSWORD[‘mat_khau_moi_cua_ban’] WHERE User = ‘root’;6 or remove them.
Đăng nhập vào hệ thống của bạn với tư cách là người dùng Unix mà máy chủ MySQL chạy như [ví dụ:
UPDATE user SET Password = PASSWORD[‘mat_khau_moi_cua_ban’] WHERE User = ‘root’;
6].Dừng máy chủ MySQL nếu nó đang chạy. Xác định vị trí tệp
UPDATE mysql.user SET Password=PASSWORD[‘mat_khau_moi_cua_ban’] WHERE User=’root’; FLUSH PRIVILEGES;
5 chứa ID quy trình của máy chủ. Vị trí chính xác và tên của tệp này phụ thuộc vào phân phối, tên máy chủ và cấu hình của bạn. Các vị trí phổ biến làUPDATE mysql.user SET Password=PASSWORD[‘mat_khau_moi_cua_ban’] WHERE User=’root’; FLUSH PRIVILEGES;
6,UPDATE mysql.user SET Password=PASSWORD[‘mat_khau_moi_cua_ban’] WHERE User=’root’; FLUSH PRIVILEGES;
7 vàUPDATE mysql.user SET Password=PASSWORD[‘mat_khau_moi_cua_ban’] WHERE User=’root’; FLUSH PRIVILEGES;
8. Nói chung, tên tệp có phần mở rộngUPDATE mysql.user SET Password=PASSWORD[‘mat_khau_moi_cua_ban’] WHERE User=’root’; FLUSH PRIVILEGES;
5 và bắt đầu bằngC:mysqlbinmysqld –init-file=C:\mysql-init.txt
0 hoặc tên máy chủ của hệ thống của bạn.Dừng máy chủ MySQL bằng cách gửi một
C:mysqlbinmysqld –init-file=C:\mysql-init.txt
1 bình thường [không phảiC:mysqlbinmysqld –init-file=C:\mysql-init.txt
2] đến quy trình MySQLD. Sử dụng tên đường dẫn thực tế của tệpUPDATE mysql.user SET Password=PASSWORD[‘mat_khau_moi_cua_ban’] WHERE User=’root’; FLUSH PRIVILEGES;
5 trong lệnh sau:mysqld process. Use the actual path name of theUPDATE mysql.user SET Password=PASSWORD[‘mat_khau_moi_cua_ban’] WHERE User=’root’; FLUSH PRIVILEGES;
5 file in the following command:mysql
0Sử dụng Backticks [không phải dấu ngoặc kép] với lệnh
C:mysqlbinmysqld –init-file=C:\mysql-init.txt
4. Những điều này khiến đầu ra củaC:mysqlbinmysqld –init-file=C:\mysql-init.txt
4 được thay thế vào lệnhC:mysqlbinmysqld –init-file=C:\mysql-init.txt
1.Tạo một tệp văn bản chứa câu lệnh Ghi nhận mật khẩu trên một dòng. Thay thế mật khẩu bằng mật khẩu mà bạn muốn sử dụng.
ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPass';
Lưu các tập tin. Ví dụ này giả định rằng bạn đặt tên cho tệp
C:mysqlbinmysqld –init-file=C:\mysql-init.txt
7. Tệp chứa mật khẩu, vì vậy không lưu nó ở nơi có thể đọc bởi những người dùng khác. Nếu bạn không đăng nhập dưới dạngUPDATE user SET Password = PASSWORD[‘mat_khau_moi_cua_ban’] WHERE User = ‘root’;
6 [người dùng mà máy chủ chạy như], hãy đảm bảo rằng tệp có quyền cho phépUPDATE user SET Password = PASSWORD[‘mat_khau_moi_cua_ban’] WHERE User = ‘root’;
6 đọc nó.Bắt đầu máy chủ MySQL với biến hệ thống
use mysql
3 được đặt để đặt tên cho tệp:mysql
2Máy chủ thực thi nội dung của tệp được đặt tên bởi biến hệ thống
use mysql
3 khi khởi động, thay đổi mật khẩu tài khoảnuse mysql
0.Các tùy chọn khác cũng có thể cần thiết, tùy thuộc vào cách bạn thường khởi động máy chủ của mình. Ví dụ:
use mysql
7 có thể cần thiết trước đối sốuse mysql
3.Sau khi máy chủ bắt đầu thành công, xóa
C:mysqlbinmysqld –init-file=C:\mysql-init.txt
7.
Bây giờ bạn sẽ có thể kết nối với máy chủ MySQL dưới dạng
mysql6 bằng cách sử dụng mật khẩu mới. Dừng máy chủ và khởi động lại bình thường.B.3.3.2.3 & nbsp; Đặt lại mật khẩu gốc: Hướng dẫn chung
Các phần trước cung cấp các hướng dẫn khởi động mật khẩu dành riêng cho các hệ thống Windows và UNIX và UNIX. Ngoài ra, trên bất kỳ nền tảng nào, bạn có thể đặt lại mật khẩu bằng máy khách MySQL [nhưng cách tiếp cận này kém an toàn]:mysql client [but this approach is less secure]:
Dừng máy chủ MySQL nếu cần thiết, sau đó khởi động lại với tùy chọn
C:> "C:Program FilesMySQLMySQL Server 5.0binmysqld-nt.exe" --defaults-file="C:\Program Files\MySQL\MySQL Server 5.0\my.ini" --init-file=C:\mysql-init.txt
7. Điều này cho phép bất kỳ ai kết nối mà không cần mật khẩu và với tất cả các đặc quyền và vô hiệu hóa các câu lệnh quản lý tài khoản nhưC:> "C:Program FilesMySQLMySQL Server 5.0binmysqld-nt.exe" --defaults-file="C:\Program Files\MySQL\MySQL Server 5.0\my.ini" --init-file=C:\mysql-init.txt
8 vàC:> "C:Program FilesMySQLMySQL Server 5.0binmysqld-nt.exe" --defaults-file="C:\Program Files\MySQL\MySQL Server 5.0\my.ini" --init-file=C:\mysql-init.txt
9. Vì điều này là không an toàn, nếu máy chủ được bắt đầu với tùy chọnC:> "C:Program FilesMySQLMySQL Server 5.0binmysqld-nt.exe" --defaults-file="C:\Program Files\MySQL\MySQL Server 5.0\my.ini" --init-file=C:\mysql-init.txt
7, nó cũng vô hiệu hóa các kết nối từ xa bằng cách bật
1.ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPass';
Kết nối với máy chủ MySQL bằng máy khách MySQL; Không cần mật khẩu vì máy chủ đã được bắt đầu với
C:> "C:Program FilesMySQLMySQL Server 5.0binmysqld-nt.exe" --defaults-file="C:\Program Files\MySQL\MySQL Server 5.0\my.ini" --init-file=C:\mysql-init.txt
7:mysql client; no password is necessary because the server was started withC:> "C:Program FilesMySQLMySQL Server 5.0binmysqld-nt.exe" --defaults-file="C:\Program Files\MySQL\MySQL Server 5.0\my.ini" --init-file=C:\mysql-init.txt
7:mysql
3Trong máy khách
UPDATE user SET Password = PASSWORD[‘mat_khau_moi_cua_ban’] WHERE User = ‘root’;
6, hãy nói với máy chủ tải lại các bảng cấp để các báo cáo quản lý tài khoản hoạt động:mysql
4Sau đó thay đổi mật khẩu tài khoản
use mysql
0. Thay thế mật khẩu bằng mật khẩu mà bạn muốn sử dụng. Để thay đổi mật khẩu cho tài khoảnmysql
6 bằng phần tên máy chủ khác, hãy sửa đổi các hướng dẫn để sử dụng tên máy chủ đó.mysql
5
Bây giờ bạn sẽ có thể kết nối với máy chủ MySQL dưới dạng
mysql6 bằng cách sử dụng mật khẩu mới. Dừng máy chủ và khởi động lại bình thường [không có tùy chọn
C:> "C:Program FilesMySQLMySQL Server 5.0binmysqld-nt.exe" --defaults-file="C:\Program Files\MySQL\MySQL Server 5.0\my.ini" --init-file=C:\mysql-init.txt7 và không bật biến hệ thống
ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPass';
1].