Computer >> Máy Tính >  >> Lập trình >> MySQL

Làm cách nào chúng ta có thể thu hồi các đặc quyền từ người dùng MySQL?

Với sự trợ giúp của câu lệnh MySQL REVOKE, chúng tôi có thể thu hồi một hoặc nhiều hoặc tất cả các đặc quyền từ người dùng MySQL. Cú pháp của nó sẽ như sau -

 REVOKEvilege_type [(column_list)] [, priv_type [(column_list)]] ... BẬT [object_type ]vilege_levelFROM người dùng [, user] ... 

Giải thích về cú pháp trên như sau -

Đầu tiên, chúng ta cần chỉ định danh sách các đặc quyền mà chúng ta muốn thu hồi từ người dùng ngay sau từ khóa REVOKE. Chúng ta cần phân tách các đặc quyền bằng dấu phẩy.
Thứ hai, chúng ta cần chỉ định mức đặc quyền mà tại đó các đặc quyền bị thu hồi trong điều khoản ON.
Thứ ba, chúng tôi cần chỉ định tài khoản người dùng mà chúng tôi muốn thu hồi các đặc quyền trong điều khoản FROM.

Ví dụ

Trong ví dụ đã cho, chúng tôi sẽ thu hồi các khoản tài trợ từ người dùng abcd @ localhost -

 mysql> HIỂN THỊ LỚP CHO abcd @ localhost; + ------------------------------------- -------------------------------- + | Tài trợ cho abcd @ localhost | + ------------------------------------------- -------------------------- + | CẤP TẤT CẢ CÁC QUYỀN RIÊNG TƯ TRÊN *. * CHO 'abcd' @ 'localhost' VỚI TÙY CHỌN CẤP | + ------------------------------ --------------------------------------- + 1 hàng trong bộ (0,00 giây)  

Truy vấn sau sẽ thu hồi các khoản tài trợ từ người dùng ‘abcd @ localhost’ -

 mysql> KHÔI PHỤC TẤT CẢ CÁC QUYỀN RIÊNG TƯ, CẤP TÙY CHỌN TỪ abcd @ localhost; Truy vấn OK, 0 hàng bị ảnh hưởng (0,00 giây) mysql> HIỂN THỊ CÁC LOẠI CHO abcd @ localhost; + -------------- ---------------------------- + | Tài trợ cho abcd @ localhost | + ------------------------------------------ + | CẤP QUYỀN SỬ DỤNG BẬT *. * ĐẾN 'abcd' @ 'localhost' | + ---------------------------------- -------- + 1 hàng trong bộ (0,00 giây)