MySQL用户创建和权限分配

MySQL用户创建和权限分配

用户创建

查看用户

select user,host from user;

创建用户

create user '用户名' @ 'host' identified by '密码';

删除用户

drop user '用户名' @ 'host';

更新host

update user set host = '%' where user = '用户名';

权限分配

查看权限

show grants;

查看某个用户权限

show grants for '用户名'@'host';

格式

GRANT ON 数据库名.表名 TO '用户名'@'localhost' IDENTIFIED BY '密码' WITH GRANT OPTION;

参数

privileges:是一个用逗号分隔的你想要赋予的MySQL用户权限的列表

IDENTIFIED BY '密码' 也是可选的,如果带上,密码是当前用户的密码

WITH GRANT OPTION 是可选的,带上就意味着该用户可以给其他用户分配权限

示例

  1. 给用户 'xxx' 所有数据库所有表的所有权限(超级管理员,和 root 用户一样的权限)
    GRANT ALL ON . TO 'xxx'@'localhost' WITH GRANT OPTION;
  2. 给 'xxx' 用户 'xxxx'数据库下面所有表的查询和修改权限
    GRANT SELECT,UPDATE ON xxxx.* TO 'xxx'@'localhost';

回收权限

使用 REVOKE 把分配权限的 TO 改成 FROM 即可

REVOKE ON 数据库名.表名 FROM '用户名'@'localhost'

刷新数据库

FLUSH PRIVILEGES;

相关推荐
Leon-Ning Liu1 分钟前
MySQL数据恢复实践:binlog2sql数据追加
数据库·mysql
嵌入式-老费4 分钟前
esp32开发与应用(看门狗测试)
java·开发语言·数据库
czhc11400756634 分钟前
615:代码细节
数据库
炘爚6 分钟前
Linux——MySQL
linux·mysql
知识分享小能手9 分钟前
Hadoop学习教程,从入门到精通, HBase 分布式数据库 — 完整知识点与案例代码(8)
数据库·hadoop·分布式
吴声子夜歌14 分钟前
SQL经典实例——处理数字
java·数据库·sql
NineData20 分钟前
日常巡检 Oracle 时,ChatDBA 怎么把会话、SQL 和等待事件一起看
数据库·sql·oracle·ninedata·故障排查·chatdba·实例巡检
海天一色y25 分钟前
深入理解 RAG 技术:从语义张量到向量数据库,Milvus 与 FAISS 全面对比
数据库·milvus·faiss
爱吃羊的老虎25 分钟前
【数据库】模块二:SQL 语句、高级特性与优化
数据库·oracle
Rain50925 分钟前
2.4. PostgreSQL 数据库连接与实战指南
前端·数据库·人工智能·后端·postgresql·数据分析