Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> MySQL

Cấp quyền (GRANT) cho user MySQL

User mới tạo không có quyền. Dùng GRANT để cấp quyền.

Cú pháp

GRANT privilege[, privilege]... 
ON privilege_level 
TO user [IDENTIFIED BY password] 
[REQUIRE tsl_option] 
[WITH [GRANT_OPTION | resource_option]];

Giải thích

  • privilege: SELECT, INSERT, UPDATE, DELETE, ALL, v.v. (phân cách dấu phẩy)
  • privilege_level: *.* (global), db.* (database), db.table (table), db.table.col (column)
  • IDENTIFIED BY: Đặt/mặt khẩu user (tùy chọn)
  • REQUIRE: Buộc kết nối SSL/X509 (tùy chọn)
  • WITH GRANT OPTION: Cho phép user cấp quyền cho người khác
  • WITH resource_option: Giới hạn resource (MAX_QUERIES_PER_HOUR, MAX_CONNECTIONS_PER_HOUR...)

Ví dụ đầy đủ

mysql> USE mysql;
mysql> CREATE USER 'abcd'@'localhost' IDENTIFIED BY 'password123';
mysql> GRANT ALL ON *.* TO 'abcd'@'localhost' WITH GRANT OPTION;
Query OK, 0 rows affected

mysql> SHOW GRANTS FOR 'abcd'@'localhost';
+---------------------------------------------------------------------+
| Grants for abcd@localhost                                           |
+---------------------------------------------------------------------+
| GRANT ALL PRIVILEGES ON *.* TO 'abcd'@'localhost' WITH GRANT OPTION |
+---------------------------------------------------------------------+