mysql如何给用户分配全局权限_合理使用GLOBAL权限层级

<p>GRANT ALL PRIVILEGES ON . 仅授予所有数据库/表的DML、DDL等常规对象权限,不包含CREATE USER、RELOAD、SHUTDOWN、GRANT OPTION及PROCESS等管理与系统权限,需显式单独授权。</p>GRANT ALL PRIVILEGES ON *.* 会赋予哪些实际权限MySQL 的 GLOBAL 权限层级(即 ON *.*)不是"所有功能全开",而是指对**所有数据库、所有表、所有未来新建库表**生效的权限集合。它不包含 CREATE USER、RELOAD、SHUTDOWN 这类管理型权限,也不自动包含 GRANT OPTION------后者必须显式声明。常见误判是以为 GRANT ALL ON *.* 就等于 root,其实它缺了关键管理能力;真正接近 root 的写法是:GRANT ALL PRIVILEGES ON *.* TO 'u'@'h' WITH GRANT OPTION。ALL PRIVILEGES 在 *.* 上覆盖的是 DML(SELECT/INSERT/UPDATE/DELETE)、DDL(CREATE/DROP/ALTER)、索引、视图、存储过程等常规对象权限但 PROCESS、REPLICATION CLIENT、SUPER 等动态系统权限需单独授予,例如:GRANT PROCESS ON *.* TO 'u'@'h'MySQL 8.0+ 中,APPLICATION_PASSWORD_ADMIN、BACKUP_ADMIN 等新权限也完全独立于 ALL PRIVILEGES,不会被隐式包含为什么用 CREATE USER + GRANT 分两步更安全直接 GRANT ... TO 'u'@'h' 在用户不存在时会自动创建,但密码策略、账户锁定、过期时间等关键安全属性全按默认值来------比如 MySQL 8.0 默认用 caching_sha2_password,而旧客户端可能连不上;又比如账户没设 PASSWORD EXPIRE,长期不换密就埋雷。分两步能精确控制初始状态:先用 CREATE USER 'u'@'h' IDENTIFIED WITH caching_sha2_password BY 'pwd' PASSWORD EXPIRE INTERVAL 90 DAY FAILED_LOGIN_ATTEMPTS 3 PASSWORD_LOCK_TIME 1 定义强约束再用 GRANT SELECT, INSERT ON *.* TO 'u'@'h' 赋权,避免权限和身份配置耦合如果跳过 CREATE USER 直接 GRANT,MySQL 5.7 会用空密码创建用户(极危险),8.0 虽改用随机密码但不可控,运维排查成本陡增GLOBAL 权限在 MySQL 8.0 的角色继承限制MySQL 8.0 引入角色(ROLE)后,GLOBAL 权限不能通过角色间接授予。也就是说:CREATE ROLE r; GRANT SELECT ON *.* TO r; 是合法的,但 GRANT r TO 'u'@'h' 不会让用户获得全局 SELECT 权限------这条语句执行成功,但权限实际不生效。 有道翻译AI助手 有道翻译提供即时免费的中文、英语、日语、韩语、法语、德语、俄语、西班牙语、葡萄牙语、越南语、印尼语、意大利语、荷兰语、泰语全文翻译、网页翻译、文档翻译、PDF翻

相关推荐
欢呼的太阳4 小时前
数据库设计Step by Step (10)——范式化
服务器·数据库·oracle
夜雪一千4 小时前
Python enumerate() 函数完整详解:遍历同时获取索引,告别手动计数
服务器·windows·python
喜欢的名字被抢了5 小时前
MySQL基础入门:从零理解数据库与SQL
数据库·mysql·教程
能有时光5 小时前
PyTorch KernelAgent 源码解读 ---(4)--- ExtractorAgent
人工智能·pytorch·python
_Jimmy_5 小时前
Python 协程库如何使用以及有哪些使用场景
python
aqi006 小时前
15天学会AI应用开发(十七)使用LangGraph实现会话记忆功能
人工智能·python·大模型·ai编程·ai应用
Elastic 中国社区官方博客6 小时前
如何比较两个 Elasticsearch 索引并找出缺失的文档
大数据·运维·数据库·elasticsearch·搜索引擎
第一程序员6 小时前
Rust Agent 子进程执行:Command 之前,先定义输入和超时
python·rust·github
DLYSB_6 小时前
生命通道:如何用 HIS 医疗系统直连网络声光终端,打造“零延误”的危急值响应网关?
java·网络·数据库·报警灯
儒雅的大叔6 小时前
MySQL数据库InnoDB数据恢复工具使用总结
数据库·mysql·adb