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;

相关推荐
夜泉_ly19 分钟前
MySQL -安装与初识
数据库·mysql
qq_529835351 小时前
对计算机中缓存的理解和使用Redis作为缓存
数据库·redis·缓存
月光水岸New4 小时前
Ubuntu 中建的mysql数据库使用Navicat for MySQL连接不上
数据库·mysql·ubuntu
狄加山6754 小时前
数据库基础1
数据库
我爱松子鱼4 小时前
mysql之规则优化器RBO
数据库·mysql
chengooooooo4 小时前
苍穹外卖day8 地址上传 用户下单 订单支付
java·服务器·数据库
Rverdoser5 小时前
【SQL】多表查询案例
数据库·sql
Galeoto5 小时前
how to export a table in sqlite, and import into another
数据库·sqlite
人间打气筒(Ada)6 小时前
MySQL主从架构
服务器·数据库·mysql
leegong231116 小时前
学习PostgreSQL专家认证
数据库·学习·postgresql