Hướng dẫn đặt lại mật khẩu Root của MySQL hoặc MariaDB trên CentOS 7

Đầu tiên bạn cần phải xác định hệ thống của bạn đang sử dụng là MySQL hay MariaDB. Bằng cách sử dụng câu lệnh

mysql --version

Với MySQL. Kết quả sẽ trông gần giống như

mysql Ver 14.14 Distrib 5.7.16, for Linux (x86_64) using EditLine wrapper

Còn với MariaDB

mysql Ver 15.1 Distrib 5.5.65-MariaDB, for Linux (x86_64) using readline 5.1

Bước 1: Tiến hành ngừng dịch vụ MySQL (MariaDB) bằng câu lệnh

Với MySQL

sudo systemctl stop mysql

Với MariaDB

sudo systemctl stop mariadb

Kiểm tra nếu không báo lỗi gì thì services đã được dừng thành công

Bước 2: Khởi chạy lại Database Server mà bỏ qua việc kiểm tra quyền hạn bằng câu lệnh

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

Bước 3: Đăng nhập vào user root của MySQL. Khi đó sẽ không đòi hỏi Password

mysql -u root

nạp lại bảng bằng câu lệnh

 FLUSH PRIVILEGES;

Đặt lại Password cho user root

Với phiên bản MySQL 5.7.6 và mới hơn hoặc MariaDB 10.1.20 và mới hơn

ALTER USER 'root'@'localhost' IDENTIFIED BY 'password mới';

Với các phiên bản cũ hơn

SET PASSWORD FOR 'root'@'localhost' = PASSWORD('password mới');

Nếu thấy báo Query OK, 0 rows affected (0.00 sec) là thành công

Cuối cùng gõ lệnh để thoát khỏi MySQL

Bước 4: Khởi động lại MySQL (MariaDB) bình thường

Kill tiến trình

Với MySQL

sudo kill `cat /var/run/mysqld/mysqld.pid`

Với MariaDB

sudo kill `/var/run/mariadb/mariadb.pid`

Nếu gặp lỗi ở bước này bạn chỉ cần reboot lại server là được

Khởi động lại services

Với MySQL

sudo systemctl start mysql

Với MariaDB

sudo systemctl start mariadb

Bước 5: Kiểm tra lại password mới bằng câu lệnh

mysql -u root -p

Sau đó nhập Password mới vừa đặt, thành công là được

 

Hướng dẫn này có ích cho bạn?

Hướng dẫn liên quan