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 | +---------------------------------------------------------------------+