首页/数据/数据库速查/GRANT 授权(库表列与全局)
本包目录(495 条)

GRANT 授权(库表列与全局)

按最小权限原则授予:全局 *.*、库级 db.*、表级 db.tbl、列级与存储过程级;GRANT 后 8.0 默认自动生效无需 FLUSH。

数据库速查数据更新于 2026-10-12
用途授予权限
语法GRANT 权限列表 ON 对象 TO 'u'@'host' [WITH GRANT OPTION]
粒度全局 / 库 / 表 / 列 / 例程

分层授权示例

分层授权示例
GRANT SELECT, INSERT, UPDATE, DELETE ON appdb.* TO 'app'@'10.0.%';
GRANT SELECT ON appdb.orders TO 'readonly'@'%';
GRANT SELECT(id, sku, qty) ON appdb.order_items TO 'analyst'@'%';
GRANT EXECUTE ON PROCEDURE appdb.sp_close_orders TO 'ops'@'localhost';

查看权限

查看权限
SHOW GRANTS FOR 'app'@'10.0.%';
SHOW GRANTS FOR CURRENT_USER();
WITH GRANT OPTION 允许被授权者继续转授权,除 DBA 场景外不要给;ALTER/CREATE 这类权限范围要仔细核对。

易错点

  • GRANT ALL ON *.* 等同于超级权限,业务账号绝不能这么授
  • 授权对象不存在时会报错(8.0 起 GRANT 不再隐式建用户),先确保库表与账号存在

数据来源与参考

  • MySQL 8.0 Reference Manual: GRANT Statement

相关工具

​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌