跳至主要內容

1.22 用户管理 🎉

刘春龙...大约 2 分钟数据库mysql

1.22 用户管理 🎉

MySQL 是一个多用户的数据库系统,按权限,用户可以分为两种: root 用户,超级管理员,和由 root 用户创建的普通用户

用户管理 💎

创建用户 👻

CREATE USER username IDENTIFIED BY 'password';

查看用户 👻

SELECT USER,HOST FROM mysql.user;

示例:创建一个 u_sxt 的用户,并查看创建是否成功。

create user u_sxt IDENTIFIED by 'sxt';
select user,host from mysql.user;

删除用户 👻

DROP USER username@localhost;

示例:删除 u_sxt 用户。

drop user 'u_sxt'@'localhost';

权限管理 💎

新用户创建完后是无法登陆的,需要分配权限。 GRANT 权限 ON 数据库.表 TO 用户名@登录主机 IDENTIFIED BY "密码"

登陆主机 👻

字段含义
%匹配所有主机
localhostlocalhost 不会被解析成 IP 地址,直接通过 UNIXsocket 连接
127.0.0.1会通过 TCP/IP 协议连接,并且只能在本机访问
:: 1::1 就是兼容支持 ipv6 的,表示同 ipv4 的 127.0.0. 1

权限列表 👻

权 限作用范围作 用
all [privileges]服务器所有权限
select表、列选择行
insert表、列插入行
update表、列更新行
delete删除行
create数据库、表、索引创建
drop数据库、表、视图删除
reload服务器允许使用flush语句
shutdown服务器关闭服务
process服务器查看线程信息
file服务器文件操作
grant option数据库、表、存储过程授权
references数据库、表外键约束的父表
index创建/删除索引
alter修改表结构
show databases服务器查看数据库名称
super服务器超级权限
create temporary tables创建临时表
lock tables数据库锁表
execute存储过程执行
replication client服务器允许查看主/从/二进制日志状态
replication slave服务器主从复制
create view视图创建视图
show view视图查看视图
create routine存储过程创建存储过程
alter routine存储过程修改/删除存储过程
create user服务器创建用户
event数据库创建/更改/删除/查看事件
trigger触发器
create tablespace服务器创建/更改/删除表空间/日志文件
proxy服务器代理成为其它用户
usage服务器没有权限
GRANT ALL PRIVILEGES ON *.* TO 'username'@'localhost' IDENTIFIED BY 'password'

示例:为 u_sxt 用户分配只能查询 bjsxt 库中的 emp 表,并且只能在本机登陆的权限。

grant select ON bjsxt.emp to 'u_sxt'@'localhost' IDENTIFIED by 'sxt';

刷新权限 👻

每当调整权限后,通常需要执行以下语句刷新权限。

FLUSH PRIVILEGES;
上次编辑于:
贡献者: 刘春龙
评论
  • 按正序
  • 按倒序
  • 按热度
Powered by Waline v2.15.7