Reset Password MySQL

studio, microphone, rec-4065105.jpg

HƯỚNG DẪN RESET MẬT KHẨU ROOT CỦA MYSQL TRÊN UBUNTU

Bài viết này nằm trong series KHÓA HỌC XÂY DỰNG HỆ THỐNG WEBSTITE TRÊN VPS. Tài liệu sẽ hướng dẫn bạn cách đặt lại mật khẩu cho tài khoản root của MySQL trong trường hợp bạn không nhớ.

Phát video về gioi-thieu-khoa-hoc-xay-dung-he-thong-website-tren-vps

Tóm tắt nội dung

MySQL là gì?

he-quan-tri-co-so-du-lieu-mysql
MySQL là hệ quản trị CSDL nguồn mở được quản lý bởi Oracle Corporation

MySQL là hệ quản trị CSDL (DBMS) nguồn mở miễn phí và được quản lý bởi Oracle Corporation. Bạn có thể tham khảo bài viết HỆ QUẢN TRỊ CSDL MYSQL để biết thêm chi tiết.

Việc quên mật khẩu root của MySQL là việc rất bình thường. Nếu bạn có quyền truy cập cao nhất của Linux thì hoàn toàn có thể đặt lại mật khẩu được.

Môi trường cài đặt

Trước khi chúng ta đi vào cách reset mật khẩu root cho MySQL, Antonio Nguyen nói qua môi trường đang triển khai nhé!

  • Web server: Apache 2.2+
  • Ubuntu 21.04
  • PHP 7.1 +, MySQL 8.0
  • IP của Server: 51.91.97.114
  • Nhà cung cấp: OVHCloud

Hướng dẫn Reset mật khẩu root của MySQL

Bước 1: Kiểm tra phiên bản của MySQL

Với mỗi phiên bản của MySQL mà cú pháp câu lệnh sẽ hơi khác nhau, bạn có thể tiến hành kiểm tra phiên bản của MySQL bằng lệnh sau:

				
					sudo mysql -V
				
			

Output của lệnh trên sẽ hiển thị như sau:

				
					Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 15
Server version: 8.0.26-0ubuntu0.21.04.3 (Ubuntu)

				
			

Lưu ý: Cùng Hệ quản trị CSDL MySQL nhưng ở các phiên bản khác nhau, cú pháp câu lệch SQL sẽ khác nhau đôi chút nên bản cần biết MySQL của mình đang ở phiên bản nào.

Bước 2: Restart MySQL với skip-grant-table

Đầu tiên, Antonio Nguyen tiến hành tắt dịch vụ MySQL trên Ubuntu 21.04 bằng lệnh sau:

				
					sudo /etc/init.d/mysql stop
				
			

Chắc chắn rằng thư mục /var/run/mysqld tồn tại và phân quyền cho người dùng mysql. Trường hợp chưa có bạn có thể chạy lệnh sau:

				
					sudo mkdir /var/run/mysqld
sudo chown mysql /var/run/mysqld
				
			

Tiến hành bật dịch vụ mysql với tùy chọn skip-grant-table bằng lệnh sau:

				
					sudo mysqld_safe --skip-grant-tables&
				
			

Output sau khi thực hiện lệnh trên có kết quả như sau. Nhấn Enter để quay tiếp tục Command Line:

				
					[1] 1283
user@server:~$ 2019-02-12T11:15:59.872516Z mysqld_safe Logging to syslog.
2019-02-12T11:15:59.879527Z mysqld_safe Logging to '/var/log/mysql/error.log'.
2019-02-12T11:15:59.922502Z mysqld_safe Starting mysqld daemon with databases from /var/lib/mysql
				
			

Lưu ý: Trong lệnh --skip-grant-tables bạn nhớ có & ở cuối câu lệnh nhé.

Bước 3: Reset mật khẩu Root cho MySQL

Tiến hành Reset mật khẩu root của MySQL bằng tập lệnh sau ( thay your_pasword_here bẳng mật khẩu của bạn):

				
					sudo mysql --user=root mysql

UPDATE mysql.user SET authentication_string=null WHERE User='root';
FLUSH PRIVILEGES;

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'your_password_here'
FLUSH PRIVILEGES;
EXIT;
				
			

Lưu ý: nhớ thay your_password_here bằng mật khẩu của bạn trong lệnh trên. Mật khẩu cần là mật khẩu mạnh chứa in hoa, in thường, số và ký tự đặc biệt.

Bước 4: Kiểm tra kết nối bằng mật khẩu mới

Trước hết, bạn cần đảm bảo tất cả tiến trình của MySQL đang chạy đều tắt bằng lệnh sau (kết thúc thông báo bằng nhấn ENTER):

				
					sudo killall -u mysql
				
			

Bật lại dịch vụ MySQL bằng lệnh sau và tiến hành login bằng mật khẩu mới ở bước 3.

				
					sudo /etc/init.d/mysql start
sudo mysql -p -u root
				
			

Kết quả Output như sau nghĩa là bạn đã Reset mật khẩu root của MySQL thành công:

				
					Enter password:
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 19
Server version: 8.0.26-0ubuntu0.21.04.3 (Ubuntu)

Copyright (c) 2000, 2021, Oracle and/or its affiliates.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> 
				
			

Tổng kết

Như vậy, Antonio Nguyen đã hướng dẫn bạn cách lấy lại mật khẩu root của MySQL 8.0 trên Ubuntu 21.04. Chúc thành công!

Tài liệu tham khảo

Câu hỏi thường gặp

Bạn cần kiểm tra phiên bản MySQL vì mỗi phiên bản cú pháp SQL sẽ hơi khác nhau. Ngoài ra lệnh skip-grant-table có & ở cuối lệnh. Bạn cần thực hiện tuần tự theo hướng dẫn trên

Tuần tự là giống nhau, chỉ khác cú pháp câu lệnh. Chi tiết bạn đọc bài viết sau https://devanswers.co/how-to-reset-mysql-root-password-ubuntu/

Bạn chỉ cần làm theo tuần tự các bước và không giới hạn số lần lấy mật khẩu MySQL.

Mật khẩu mạnh chứa in hoa, in thường, số và ký tự đặc biệt. Ngoài ra còn yêu cầu về độ dài của mật khẩu. Bạn nên lưu lại mật khẩu ở local để dùng lần sau.

Nếu bạn dùng Putty bạn copy command line / mật khẩu từ ngoài vào sau đó chỉ cần chuột phải là có thể paste câu lệnh đó vào command line.

Với hệ điều hành Linux khác nhau câu lệnh Shell Bash sẽ khác nhau, bạn có thể đọc bài viết https://devanswers.co/how-to-reset-mysql-root-password-ubuntu/ để biết thêm chi tiết.

Chia sẻ bài viết:

Bài viết liên quan

Lựa chọn là của chính bạn
Tình yêu

Lựa chọn là của chính bạn

Đó là lúc bạn tin tưởng vào sự lựa chọn của mình mặc dù người ta có thể cho bạn là điên hay thằng khùng hay nói rằng cô ấy không hợp với bạn. Tương lai của bạn, sự lựa chọn của bạn chỉ có thể trái tim bạn hiểu rõ.

Đọc thêm »
người-vô-gia-cư
LifeStyle

CÂU CHUYỆN 20 EURO

20 Euro không phải số tiền lớn nhưng nếu nó được ban cho lúc bần hàn thì nó lại là câu chuyện khác

Đọc thêm »

1 thought on “HƯỚNG DẪN RESET MẬT KHẨU ROOT CỦA MYSQL TRÊN UBUNTU”

  1. Pingback: KHÓA HỌC XÂY DỰNG HỆ THỐNG WEBSITE TRÊN VPS

Comments are closed.

Viết Blog là cách tôi thể hiện cá tính và tự do trong thế giới quan của mình.
avarta_antonionguyen_student
Antonio Nguyen
Co- Founder An Publisher

Người nào ở nơi kín đáo của Đấng Chí Cao,Sẽ hằng được ở dưới bóng của Đấng Toàn Năng (Thi Thiên 91:1)

Scroll to Top
Scroll to Top