Giới thiệu nhanh về Quyền người dùng trong Cơ sở dữ liệu MySQL
Hãy xem cách cấp quyền (được gọi là đặc quyền) cho người dùng cơ sở dữ liệu MySQL
Theo mặc định khi bạn tạo người dùng MySQL mới bằng cú pháp
CREATE USER '<username>'@'localhost' IDENTIFIED BY '<password>';
người dùng không thể làm gì nhiều. Chúng tôi có thể nói rằng nó không thể làm bất cứ điều gì, thực sự.
Nó không thể đọc dữ liệu từ bất kỳ cơ sở dữ liệu hiện có nào, chưa nói đến việc sửa đổi dữ liệu. Và nó thậm chí không thể tạo một cơ sở dữ liệu mới.
Để khiến người dùng làm bất cứ điều gì, bạn phảicấp đặc quyềnvới nó.
Bạn có thể làm như vậy bằng cách sử dụngGRANT
chỉ huy.
Chúng ta có thể sử dụngGRANT <permission>
, sử dụng các từ khóa quyền sau:
CREATE
DROP
DELETE
INSERT
SELECT
UPDATE
ALL PRIVILEGES
Cấp đặc quyền tạo cơ sở dữ liệu mới cho người dùng
GRANT CREATE ON *.* TO '<username>'@'localhost';
Cấp đặc quyền cho người dùng để tạo bảng mới trong cơ sở dữ liệu cụ thể
GRANT CREATE ON <database>.* TO '<username>'@'localhost';
Cấp đặc quyền đọc (truy vấn) một cơ sở dữ liệu cụ thể cho người dùng
GRANT SELECT ON <database>.* TO '<username>'@'localhost';
Cấp đặc quyền để đọc một cơ sở dữ liệu cụ thểbàncho một người dùng
GRANT SELECT ON <database>.<table> TO '<username>'@'localhost';
Cấp đặc quyền chèn, cập nhật và xóa các hàng trong cơ sở dữ liệu cụ thể cho người dùng
GRANT INSERT, UPDATE, DELETE ON <database>.* TO '<username>'@'localhost';
Cấp quyền xóa bảng trong cơ sở dữ liệu cụ thể cho người dùng
GRANT DROP ON <database>.* TO '<username>'@'localhost';
Cấp đặc quyền xóa cơ sở dữ liệu cho người dùng
GRANT DROP ON *.* TO '<username>'@'localhost';
Cung cấp tất cả đặc quyền trên một cơ sở dữ liệu cụ thể cho người dùng
GRANT ALL PRIVILEGES ON <database>.* TO '<username>'@'localhost';
Cung cấp tất cả các đặc quyền cho người dùng
GRANT ALL PRIVILEGES ON *.* TO '<username>'@'localhost';
Thu hồi một đặc quyền
Ví dụ để thu hồiDROP
đặc quyền trên<database>
:
REVOKE DROP ON <database>.* TO '<username>'@'localhost';
Để thu hồi tất cả các đặc quyền, hãy chạy:
REVOKE ALL PRIVILEGES ON *.* TO '<username>'@'localhost';
Bạn có thể hình dung các đặc quyền của một người dùng bằng cách chạy:
SHOW GRANTS FOR '<username>'@'localhost';
Các hướng dẫn khác về cơ sở dữ liệu:
- Hướng dẫn kiến thức cơ bản về MongoDB
- MongoDB khác với cơ sở dữ liệu SQL như thế nào
- Hệ thống thông tin, dữ liệu và thông tin
- Mô hình dữ liệu
- Giới thiệu về Mô hình Dữ liệu ER
- Mô hình quan hệ
- Đại số quan hệ
- Cơ sở dữ liệu quan hệ
- Cơ sở dữ liệu là gì? Và một DBMS?
- Giới thiệu về SQL
- Cách cài đặt PostgreSQL trên macOS
- Bạn luôn cần một cơ sở dữ liệu cho ứng dụng của mình?
- Cách cài đặt SQLite trên macOS
- Giới thiệu về PostgreSQL
- Quyền người dùng PostgreSQL
- Cách liệt kê tất cả người dùng trong PostgreSQL
- Cách chuyển đổi cơ sở dữ liệu bằng PostgreSQL
- Cách liệt kê tất cả cơ sở dữ liệu bằng PostgreSQL
- Cách liệt kê các bảng trong cơ sở dữ liệu hiện tại bằng PostgreSQL
- Cách cài đặt MySQL trên macOS
- Tạo người dùng trên MySQL
- PostgreSQL và MySQL, một so sánh
- Quyền của người dùng SQLite
- Quyền của người dùng MySQL
- SQL, tạo bảng
- SQL, thêm dữ liệu vào bảng
- SQL, cách sử dụng SELECT
- SQL, Xử lý các ô trống
- SQL, khóa duy nhất và khóa chính
- SQL, cách cập nhật dữ liệu
- SQL, cách cập nhật cấu trúc bảng
- SQL, cách xóa dữ liệu và bảng
- SQL tham gia
- Chế độ xem SQL
- Cách chèn nhiều mục cùng lúc trong bộ sưu tập MongoDB
- Cách xóa tất cả các mục khỏi bộ sưu tập MongoDB