Download app

Quét mã QR để tải về ứng dụng

QR code

Khôi phục MySQL Root Password trên CentOS

16/06/2021, 04:21 pm
1,087

Nếu bạn đang chạy MySQL trong datacenter của mình thì sẽ không tránh khỏi những lúc bạn phải reset mật khẩu. Điều này có thể xảy ra khi bạn quên hoặc làm mất mật khẩu. Vậy làm thế nào để khôi phục MySQL Root Password trên Centos? Nhân Hòa sẽ hướng dẫn bạn thực hiện được tác vụ này.

1. MySQL là gì?

MySQL là hệ quản trị cơ sở dữ liệu mã nguồn mở phổ biến hàng đầu trên thế giới (gọi tắt là RDBMS) và đặc biệt MySQL được ưa chuộng trong quá trình xây dựng, phát triển ứng dụng. MySQL được đánh giá là hệ quản trị cơ sở dữ liệu tốc độ cao, ổn định và dễ sử dụng, có khả năng thay đổi mô hình sử dụng phù hợp với điều kiện công việc. MySQL hoạt động trên nhiều hệ điều hành, cung cấp một hệ thống lớn các hàm tiện ích rất mạnh.

MySQL là gì?

MySQL thích hợp với các ứng dụng có truy cập cơ sở dữ liệu trên Internet nhờ vào tốc độ cũng như tính bảo mật cao. MySQL có thể tải miễn phí từ trang chủ với nhiều phiên bản cho các hệ điều hành khác nhau như phiên bản Win32 cho các hệ điều hành dòng Windows, Linux, Mac OS X, Unix, FreeBSD,...

>>> Xem thêm: MySQL là gì? Tổng quan từ A - Z thông tin MySQL 

2. Hướng dẫn lấy lại mật khẩu root password trong MySQL

Nếu bạn có lỡ quên mật khẩu MySQL của mình thì cũng đừng quá lo lắng, bởi vẫn có cách để lấy lại chúng. Bạn chỉ cần thực hiện theo các bước đơn giản sau đây:

- Bước 1: Dừng tiến trình MySQL server bằng câu lệnh:

sudo service mysql stop

- Bước 2: Khởi động MySQL server với lệnh sau:

sudo mysqld_safe —skip-grant-tables —skip-networking &

- Bước 3: Kết nối với máy chủ MySQL với tư cách người dùng root bằng lệnh:

mysql -u root

Tại thời điểm này, bạn cần phải thực hiện các lệnh MySQL sau để đặt lại mật khẩu gốc:

mysql> use mysql;

mysql> update user set authentication_string=password('NEWPASSWORD') where user='root';

mysql> flush privileges;

mysql> quit

Bạn thay mật khẩu mới để sử dụng cho NEWPASSWORD trong câu lệnh

 

Hướng dẫn lấy lại mật khẩu root password trong MySQL

- Bước 4: Khởi động lại daemon MySQL bằng lệnh:

sudo service mysql restart

Bây giờ bạn có thể đăng nhập vào MySQL bằng mật khẩu mới

>>> Xem thêm: Authentication là gì? Hiểu kỹ hơn về Authentication 

3. MySQL reset root password: Windows

Trên Windows, hãy sử dụng quy trình sau cho MySQL reset root password 'root'@'localhost'. Để đổi password cho một tài khoản root với một phần tên host khác, hãy sửa đổi các hướng dẫn để sử dụng tên host đó.

- Bước 1: Đăng nhập vào hệ thống với quyền admin

- Bước 2: Dừng server MySQL nếu nó đang chạy. Với một server đang chạy dịch vụ Windows, đi đến Services manager: Từ menu Start, chọn Control Panel, Administrative Tools, rồi Services. Tìm dịch vụ MySQL trong danh sách rồi dừng nó. Nếu server đang không chạy như một dịch vụ, bạn có thể cần sử dụng Task Manager để buộc dừng nó

- Bước 3: Tạo một text file chứa lệnh gán password trên một dòng duy nhất. Thay thế password với password mà bạn muốn sử dụng

ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPass';

- Bước 4: Lưu file lại. Ví dụ này giả sử rằng bạn đặt tên bài là C:mysql-init.txt.

- Bước 5: Mở một cửa sổ console để vào command prompt: Từ menu Start, chọn Run, nhập cmd như lệnh cần chạy.

- Bước 6: Khởi động server MySQL với biến số hệ thống init_file được đặt để đặt tên file (lưu ý rằng dấu trong giá trị tùy chọn được nhân đôi)

C:> cd "C:Program FilesMySQLMySQL Server 8.0bin" C:> mysqld     --init-file=C:mysql-init.txt

 

MySQL reset root password: Windows

Lưu ý:

Nếu bạn đã cài đặt MySQL ở vị trí khác, chỉnh sửa lệnh cd theo đó

Server thực thi nội dung của file có tên được đặt bởi biến hệ thống init_file, thay đổi password tài khoản 'root'@'localhost'

Để có server output xuất hiện trong cửa sổ console thay vì trong log file, thêm tùy chọn --console vào lệnh mysqld

Nếu bạn cài đặt MySQL bằng trình cài đặt MySQL Installation Wizard, bạn có thể sẽ cần chỉ định tùy chọn ---defaults-file. Ví dụ

C:> mysqld --defaults-file="C:ProgramDataMySQLMySQL Server 8.0my.ini" --init-file=C:mysql-init.txt

Có thể tìm thấy cài đặt --defaults-file bằng Services Manager: Từ menu Start, chọn Control Panel, Administrative Tools, rồi Services. Tìm MySQL trong danh sách, chuột phải vào nó, rồi chọn Properties. Đường dẫn đến trường executable có chứa tùy chọn --defaults-file.

- Bước 7: Sau khi server đã khởi động thành công, xóa C:mysql-init.txt

Bây giờ bạn đã có thể kết nối với server MySQL dưới dạng root bằng password mới. Dừng server MySQL rồi restart nó bình thường. Nếu bạn chạy server dưới dạng dịch vụ, khởi động nó từ cửa sổ Windows Services 

>>> Xem thêm: Localhost là gì? Hướng dẫn cài đặt local host nhanh nhất 

4. MySQL reset root password: Unix và các hệ thống tương tự Unix

Trên Unix, hãy sử dụng quy trình sau để reset password cho tài khoản MySQL 'root'@'localhost'. Để thay đổi password cho một tài khoản root với 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ủ đó.

- Bước 1: Đăng nhập vào hệ thống dưới dạng người dùng Unix mà server MySQL chạy (ví dụ, mysql).

- Bước 2: Dừng server MySQL nếu nó đang chạy. Xác định vị trí của file .pid chứa ID process của server. Vị trí và tên chính xác của file này phụ thuộc vào phân phối, tên host và cấu hình của bạn 

Các vị trí phổ biến là /var/lib/mysql/, /var/run/mysql/, và /usr/local/mysql/data/. Thông thường, tên file có phần mở rộng .pid và bắt đầu bằng mysql hoặc tên host hệ thống của bạn. Dừng server MySQL bằng cách gửi một kill bình thường (không phải kill -9) đến mysqld process. Sử dụng tên đường dẫn thực tế của file .pid trong lệnh sau

shell> kill `cat /mysql-data-directory/host_name.pid`

Sử dụng backtick với lệnh cat. Điều này làm output của cat bị thay thế vào lệnh kill.

- Bước 3: Tạo một text file có chứa lệnh gán password trên một dòng duy nhất. Thay password bằng password mà bạn muốn sử dụng

ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPass';

 

MySQL reset root password: Unix và các hệ thống tương tự Unix

- Bước 4: Lưu file lại. Ví dụ này giả sử bạn đặt tên cho file là /home/me/mysql-init. File chứa password, nên không cần phải lưu nó ở nơi có thể bị đọc bởi người khác. Nếu bạn chưa đăng nhập dạng mysql (dạng user mà server chạy), đảm bảo file có quyền cho phép mysql đọc nó.

- Bước 5: Chạy server MySQL với biến hệ thống init_file được đặt để đặt tên file

shell> mysqld --init-file=/home/me/mysql-init &

Server sẽ thực thi nội dung của file được được đặt tên bởi init file khi khởi động, thay đổi password tài khoản 'root'@'localhost'.

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 bình thường khởi động server của mình.

Ví dụ:

-defaults-file có thể cần trước đối số init_file

- Bước 6: Sau khi server đã khởi động thành công, xóa /home/me/mysql-init.

Bây giờ bạn có thể kết nối với server MySQL dưới dạng root bằng password mới. Dừng server và restart nó bình thường

5. Kết luận

Bây giờ bạn có thể kết nối với server MySQL dưới dạng root bằng password mới. Dừng server và restart lại bình thường (không có tùy chọn --skip-grant-tables và không bật skip_networking). Vậy là đã hoàn tất các bước vô cùng đơn giản để khôi phục và đặt lại mật khẩu gốc trong MySQL. Chúc các bạn thành công!

Bài viết liên quan
20/11/2024
Các fan cứng của Nhân Hòa đã biết Chương trình Black Friday 2024 sẽ có mức ưu đãi khủng là bao nhiêu % và áp dụng cho những...
19/11/2024
Đừng để website của bạn bị "tắt đèn" vì hết hạn tên miền! Hãy chủ động gia hạn tên miền để đảm bảo sự liên...
16/11/2024
Không phải bàn cãi việc WordPress đang là một trong những nền tảng hàng đầu trong việc xây dựng website hiện nay. Và giải...
Chuyên nghiệp và tận tình
Hỗ Trợ Trực Tuyến 24/7
Đội ngũ chuyên gia giúp xử lý vấn đề kỹ thuật để website của bạn luôn hoạt động tốt và chạy nhanh. Bất kỳ lúc nào.
Kết nối với Nhân Hoà

Map Tầng 4 - Toà nhà 97 - 99 Láng Hạ, Quận Đống Đa, Thành Phố Hà Nội

Phone Điện thoại: 1900 6680 - (024) 7308 6680

Mail Mail: sales@nhanhoa.com

Hotline Phản ánh chất lượng dịch vụ: 091 140 8966

Map 927/1 CMT8, Phường 7, Quận Tân Bình, Thành phố Hồ Chí Minh

Phone Điện thoại: 1900 6680 - (028) 7308 6680

Mail Mail: hcmsales@nhanhoa.com

Hotline Phản ánh chất lượng dịch vụ: 091 140 8966

Map Tầng 2 Tòa nhà Sài Gòn Sky, ngõ 26 Nguyễn Thái Học, phường Đội Cung, TP. Vinh, Nghệ An

Phone Điện thoại: 1900 6680 - (024) 7308 6680 - nhánh 6

Mail Mail: contact@nhanhoa.com

Hotline Phản ánh chất lượng dịch vụ: 091 140 8966

Kết nối với Nhân Hoà
Gọi lại cho tôi
Gọi miễn phí
Gọi miễn phí
×
Thông báo

Đăng nhập thành công!