基本語法:GRANT 權限 ON 資料庫對象 TO 用戶
GRANT SELECT, INSERT, UPDATE, DELETE ON testdb.* TO common_user@'%';
-- 表結構 GRANT CREATE, ALTER, DROP ON testdb.* TO developer@'192.168.0.%'; -- 外鍵 GRANT REFERENCES ON testdb.* TO developer@'192.168.0.%'; -- 臨時表 GRANT CREATE TEMPORARY TABLES ON testdb.* TO developer@'192.168.0.%'; -- 索引 GRANT INDEX ON testdb.* TO developer@'192.168.0.%'; -- 視圖 GRANT CREATE VIEW, SHOW VIEW ON testdb.* TO developer@'192.168.0.%'; -- 存儲過程/函數 GRANT CREATE ROUTINE, ALTER ROUTINE, EXECUTE ON testdb.* TO developer@'192.168.0.%';
GRANT ALL PRIVILEGES ON testdb TO dba@'localhost';
GRANT ALL ON *.* TO dba@'localhost';
GRANT SELECT ON *.* TO dba@localhost;GRANT SELECT ON testdb.* TO dba@localhost;GRANT SELECT, INSERT ON testdb.orders TO dba@localhost;GRANT SELECT(id, se, rank) ON testdb.apache_log TO dba@localhost;GRANT EXECUTE ON PROCEDURE testdb.pr_add TO 'dba'@'localhost';SHOW GRANTS; -- 當前用戶 SHOW GRANTS FOR dba@localhost; -- 指定用戶
語法同 GRANT,將 TO 改為 FROM:
REVOKE ALL ON *.* FROM dba@localhost;
WITH GRANT OPTION,生產環境建議由 DBA 統一管理,不開放此權限user:全域權限、連線認證db:庫級權限host:配合 db 進行主機級訪問控制 (不受 GRANT/REVOKE 影響)tables_priv:表級權限columns_priv:欄位級權限掌握分層授權體系,能精準實施最小權限原則,保障資料庫安全。