Hướng dẫn từng bước để tìm hiểu cách khôi phục mật khẩu gốc của máy chủ SQL.
Người sử dụng quan trọng nhất của một máy chủ MySQL chắc chắn là người dùng"root“. Người dùng này có tất cả đặc quyền quản trị cơ sở dữ liệu (MySQL databases).
Trong trường hợp bạn không còn biết mật khẩu người dùng root MySQL là gì, bạn sẽ cần thực hiện theo một số bước đơn giản để đặt lại mật khẩu này.
Hướng dẫn được thực hiện cho một máy chủ MySQL được cài đặt trên hệ điều hành CentOS, nhưng quy trình này giống với các bản phân phối khác Linux.
Cách khôi phục mật khẩu cho người dùng root của máy chủ SQL
Để khôi phục mật khẩu cho người dùng root của máy chủ SQL, phương pháp đơn giản nhất là bằng cách SSH (Secure Shell).
1. Chúng tôi đăng nhập bằng người dùng "root” vào hệ thống chứa máy chủ MySQL. (người dùng root của hệ thống, không phải của máy chủ MySQL). Đăng nhập trực tiếp từ bảng điều khiển hoặc từ xa thông qua kết nối ssh (By putty từ các hệ thống Windows).
2. Ngăn chặn quá trình / MySQL.
service mysqld stop
hoặc
/etc/init.d/mysqld stop
Kết quả sẽ là:
Stopping MySQL: [ OK ]
3. Chúng tôi khởi động máy chủ MySQL với tùy chọn "--skip-grant-tables
“. Khởi động máy chủ MySQL/daemon quá trình không có mật khẩu.
mysqld_safe --skip-grant-tables &
Đầu ra sau dòng lệnh trên:
[1] 3041
[root@server ~]# Starting mysqld daemon with databases from /var/lib/mysql
4. Chúng tôi kết nối với máy chủ mysql với người dùng "root", sử dụng lệnh:
mysql -u root
Kết quả của lệnh:
Welcome to the MySQL monitor. Commands end with ; or g.
Your MySQL connection id is 1
Server version: 5.0.77 Source distribution
Type 'help;' or 'h' for help. Type 'c' to clear the buffer.
mysql>
5. Chọn cơ sở dữ liệu mysql và đặt mật khẩu mới cho người dùng "root".
use mysql;
update user set password=PASSWORD("New_Password") where User='root';
flush privileges;
quit
Kết quả từ các lệnh trên:
mysql> use mysql;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A
Database changed
mysql> update user set password=PASSWORD("123456") where User='root';
Query OK, 0 rows affected (0.00 sec)
Rows matched: 3 Changed: 0 Warnings: 0
mysql> flush privileges;
Query OK, 0 rows affected (0.01 sec)
mysql> quit
Bye
[root@server ~]#
6. Chúng tôi dừng và khởi động lại dịch vụ / máy chủ MySQL
service mysqld stop
service mysqld start
Kết quả:
Starting MySQL: [ OK ]
Hình ảnh dưới đây cho thấy tất cả mọi thứ quá trình thiết lập lại mật khẩu của người dùng"root” của máy chủ MySQL.
Bây giờ chúng ta có thể kết nối với MySQL (thông qua phpMyAdmin ví dụ) với người dùng "root", sử dụng mật khẩu mới được đặt ở trên.
Hướng dẫn kiểm tra CentOS 5.6 với MySQL Ver 14.12 Distrib 5.0.77, cho redhat-linux-gnu (i686) sử dụng dòng đọc 5.1.