Nếu bạn chưa bao giờ đặt, quên hoặc thay đổi mật khẩu MySQL, bạn thật may mắn. Bài viết này sẽ hướng dẫn bạn các bước này, do đó bạn sẽ không bao giờ phải mất mật khẩu người dùng root cơ sở dữ liệu đó.
Bạn có thể có MySQL đang chạy ở đâu đó trong trung tâm dữ liệu của mình. Nếu đúng như vậy, có thể có lúc bạn cần đặt hoặc thay đổi mật khẩu người dùng root. Điều này có thể xảy ra khi bạn quên mật khẩu hoặc khi bạn muốn đặt lại mật khẩu.
Quá trình này được xử lý hoàn toàn thông qua dòng lệnh và hoạt động với cả cài đặt MySQL hoặc MariaDB. Bản phân phối Linux được sử dụng không quan trọng miễn là bạn có quyền truy cập quản trị thông qua su hoặc sudo.
Cách thiết lập mật khẩu MySQL lần đầu tiên
Xin lưu ý rằng tôi sẽ nhắc đến MySQL với ý tưởng rằng mọi thứ đều có thể hoạt động với cả MySQL và MariaDB.
Thông thường, trong quá trình cài đặt MySQL và MariaDB, bạn được yêu cầu đặt mật khẩu ban đầu. Nếu không, bạn sẽ cần đặt mật khẩu lần đầu tiên. Để thực hiện, hãy mở cửa sổ terminal và đưa ra lệnh sau:
mysqladmin -u root password NEWPASSWORD
Trong trường hợp này, NEWPASSWORD là mật khẩu giữ chỗ. Tiếp theo, khi bạn đăng nhập vào MySQL bằng lệnh mysql -u root -p, bạn sẽ được nhắc nhập mật khẩu mới được cấu hình.
Một phương pháp thay thế để thiết lập mật khẩu root lần đầu tiên – giúp tăng thêm một chút bảo mật cho cơ sở dữ liệu MySQL của bạn – là sử dụng mysql_secure_connection. Lệnh này sẽ thiết lập mật khẩu người dùng root và cho phép bạn xóa người dùng ẩn danh, không cho phép đăng nhập root từ xa và xóa cơ sở dữ liệu thử nghiệm. Để sử dụng lệnh này, chỉ cần nhập:
mysql_secure_connection
Trả lời các câu hỏi được đưa ra và mật khẩu của bạn sẽ được thiết lập, giúp cơ sở dữ liệu của bạn an toàn hơn.
Cách thay đổi mật khẩu người dùng root MySQL
Để đặt lại mật khẩu cho MySQL, trước tiên bạn phải tạo một tệp mới có nội dung sau:
ALTER USER ‘root’@’localhost’ IDENTIFIED BY ‘PASSWORD’;
PASSWORD là mật khẩu mới sẽ được sử dụng. Lưu tệp đó dưới dạng ~/mysql-pwd.
Tiếp theo, dừng daemon MySQL bằng lệnh:
sudo systemctl stop mysql
Sau khi daemon đã dừng, hãy đưa ra lệnh:
sudo mysqld -init-file=~/mysql-pwd
Khi dấu nhắc lệnh xuất hiện, hãy khởi động lại daemon MySQL bằng lệnh:
sudo systemctl start mysql
Bây giờ bạn có thể đăng nhập vào dấu nhắc lệnh MySQL bằng mật khẩu quản trị viên mới như sau:
mysql -u root -p
Khi được nhắc, hãy nhập mật khẩu quản trị viên và bạn đã sẵn sàng.
Cách thay đổi mật khẩu người dùng MySQL
Để thay đổi mật khẩu của người dùng không phải root, sau khi đăng nhập, hãy chạy truy vấn sau:
ALTER USER ‘username’@‘host’ IDENTIFIED BY ‘PASSWORD’;
username Tên người dùng MySQL là gì , host máy chủ mà người dùng có thể kết nối là gì và PASSWORD mật khẩu mới là gì.
Sau đó áp dụng các thay đổi bằng cách chạy lệnh:
FLUSH PRIVILEGES;
Làm thế nào để khôi phục mật khẩu MySQL của bạn
Nếu bạn quên mật khẩu người dùng root MySQL thì sao? Để khôi phục mật khẩu, bạn chỉ cần làm theo các bước sau:
Dừng tiến trình máy chủ MySQL bằng lệnh sudo service mysql stop
Khởi động máy chủ MySQL bằng lệnh sudo mysqld_safe –skip-grant-tables –skip-networking &
Kết nối với máy chủ MySQL với tư cách là 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 root:
mysql> use mysql;
mysql> update user set authentication_string=password(‘NEWPASSWORD’) where user=’root’;
mysql> flush privileges;
mysql> quit
NEWPASSWORD Mật khẩu mới sẽ sử dụng ở đâu?
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.
Và thế là xong. Bây giờ bạn có thể thiết lập, đặt lại và khôi phục mật khẩu MySQL của mình.
Cách hiển thị người dùng và mật khẩu MySQL
Thỉnh thoảng, bạn có thể muốn tạo danh sách người dùng và mật khẩu MySQL để kiểm tra hoặc sao lưu thông tin xác thực. Bạn có thể thực hiện việc này bằng cách truy vấn bảng mysql.user, nhưng lưu ý rằng mật khẩu được lưu trữ ở định dạng hashed, do đó không thể truy xuất trực tiếp dưới dạng văn bản thuần túy.
Chạy truy vấn sau để lấy các cột người dùng và mật khẩu:
SELECT User, Host, authentication_string FROM mysql.user;
Trong đó User tên người dùng MySQL là gì, Host máy chủ mà người dùng có thể kết nối, chẳng hạn như localhost, và authentication_string mật khẩu hashed.
Đặt mật khẩu khó cho người dùng root MySQL của bạn
Với tình hình tấn công hiện tại trên toàn bộ lĩnh vực CNTT, bạn nên sử dụng mật khẩu mạnh cho cơ sở dữ liệu của mình. Thay vì sử dụng mật khẩu dễ nhớ, hãy sử dụng trình tạo mật khẩu ngẫu nhiên và lưu trữ trong trình quản lý mật khẩu. An toàn hơn cả an toàn.
Công ty TNHH METASERV
Email: sales@metaserv.vn
Hotline: 096 308 7773 | 1800 558 820
Thi chứng chỉ: 028 3933 8888
Địa chỉ: 287B Điện Biên Phủ, Phường Xuân Hòa, TP. Hồ Chí Minh
Fanpage: IDC METASERV
0 Comments