MySQL là một hệ quản trị cơ sở dữ liệu phổ biến, hỗ trợ nhiều người dùng với các quyền truy cập khác nhau. Trong bài viết này, chúng ta sẽ tìm hiểu cách tạo người dùng mới và cấp quyền trong MySQL một cách chi tiết.

1. Tạo người dùng mới trong MySQL

Trước khi tạo người dùng mới, hãy đảm bảo rằng bạn có quyền truy cập với tư cách root hoặc một tài khoản có quyền quản trị.

1.1 Cú pháp tạo người dùng

MySQL cung cấp lệnh CREATE USER để tạo một người dùng mới:

shell
CREATE USER 'ten_nguoi_dung'@'host' IDENTIFIED BY 'mat_khau';
  • ten_nguoi_dung: Tên của người dùng mới.
  • host: Xác định từ đâu người dùng có thể kết nối (ví dụ: 'localhost' chỉ cho phép kết nối từ máy cục bộ, % cho phép từ mọi nơi).
  • mat_khau: Mật khẩu của người dùng.

Ví dụ, để tạo người dùng codetuthub với quyền truy cập từ bất kỳ đâu:

shell
CREATE USER 'codetuthub'@'%' IDENTIFIED BY 'MatKhauAnToan123';

2. Cấp quyền cho người dùng

Sau khi tạo người dùng, chúng ta cần cấp quyền để họ có thể thao tác với cơ sở dữ liệu.

2.1 Cấp quyền cụ thể

MySQL sử dụng lệnh GRANT để cấp quyền:

shell
GRANT loai_quyen ON ten_co_so_du_lieu.ten_bang TO 'ten_nguoi_dung'@'host';

Ví dụ, để cấp toàn bộ quyền trên cơ sở dữ liệu codetuthub_db cho người dùng codetuthub:

shell
GRANT ALL PRIVILEGES ON codetuthub_db.* TO 'codetuthub'@'%';

Nếu chỉ muốn cấp quyền SELECT, INSERT, và UPDATE:

shell
GRANT SELECT, INSERT, UPDATE ON codetuthub_db.* TO 'codetuthub'@'%';

2.2 Cấp quyền quản trị

Nếu muốn cấp quyền quản trị (chẳng hạn như tạo hoặc xóa người dùng), có thể sử dụng:

shell
GRANT ALL PRIVILEGES ON *.* TO 'codetuthub'@'%' WITH GRANT OPTION;

Lệnh WITH GRANT OPTION cho phép người dùng được cấp quyền tiếp tục cấp quyền cho người khác.

2.3 Áp dụng thay đổi quyền

Sau khi cấp quyền, cần làm mới lại quyền bằng lệnh:

shell
FLUSH PRIVILEGES;

3. Kiểm tra và thu hồi quyền

3.1 Kiểm tra quyền của người dùng

Để xem quyền của một người dùng cụ thể:

shell
SHOW GRANTS FOR 'codetuthub'@'%';

3.2 Thu hồi quyền

Dùng REVOKE để thu hồi quyền:

shell
REVOKE SELECT, INSERT ON codetuthub_db.* FROM 'codetuthub'@'%';

Hoặc thu hồi tất cả quyền:

shell
REVOKE ALL PRIVILEGES ON *.* FROM 'codetuthub'@'%';

Sau đó, đừng quên chạy:

shell
FLUSH PRIVILEGES;

4. Xóa người dùng

Nếu cần xóa người dùng khỏi MySQL, sử dụng lệnh DROP USER:

shell
DROP USER 'codetuthub'@'%';

Kết luận

Bài viết này đã hướng dẫn cách tạo người dùng mới trong MySQL, cấp quyền truy cập, kiểm tra và thu hồi quyền, cũng như cách xóa người dùng. Việc quản lý quyền truy cập là rất quan trọng để đảm bảo bảo mật và hiệu suất của hệ thống cơ sở dữ liệu.

Hy vọng bài viết này sẽ giúp ích cho bạn trong việc quản trị MySQL trên hệ thống của mình!

Nếu bạn có câu hỏi hoặc cần hướng dẫn thêm, hãy để lại bình luận trên codetuthub.com!