首页/数据/数据库速查/权限表与实用查询(mysql.user/db/tables_priv)

权限表与实用查询(mysql.user/db/tables_priv)

权限落库在 mysql 系统库;日常用 SHOW GRANTS,批量审计直接查表更全面,但系统表结构随版本变化,写脚本要谨慎。

数据库速查数据更新于 2026-10-12
用途权限审计
系统表mysql.user / mysql.db / mysql.tables_priv / mysql.role_edges
首选SHOW GRANTS / information_schema

常用审计查询

常用审计查询
SELECT user, host, account_locked, plugin FROM mysql.user;
SELECT * FROM mysql.role_edges;
SELECT grantee, table_schema, privilege_type FROM information_schema.table_privileges WHERE grantee LIKE '%app%' LIMIT 20;
不要直接 DML 修改 mysql 系统表(8.0 数据字典已不推荐),账号与权限一律走 CREATE/GRANT/REVOKE 语句。

易错点

  • 5.7 与 8.0 的 mysql 系统表列差异大,跨版本脚本会直接崩
  • 忘记 FLUSH PRIVILEGES 的老套路:直接改表才需要,正常 DDL 不需要

数据来源与参考

  • MySQL 8.0 Reference Manual: Access Control and Account Management

相关工具

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