本篇将详细介绍如何使用MySQL管理数据库用户
(1):创建用户
mysql5
mysql> grant [权限] on [数据库].[数据表] to '[账户]'@'[访问ip]' identified by '[密码]'
mysql8
mysql> create user '[账户]'@'[访问ip]' identified by '[密码]'
mysql> grant [权限] on [数据库].[数据表] to '[账户]'@'[访问ip]'
[权限]
all privileges = 所有权限
其余权限参照权限说明, 多个权限使用英文逗号分隔
(2):删除用户
mysql> drop user '[账户]'@'[访问ip]'
(3):撤销权限
mysql> revoke [权限] on [数据库].[数据表] from '[账户]'@'[访问ip]'
[权限]
all = 全部
其余权限参照权限说明, 多个权限使用英文逗号分隔
(4):修改用户密码
[mysql5.7及以下]
mysql> update user set authentication_string=password('[密码]')
[mysql8]
mysql> alter user 'user'@'ip' identified by '密码'
权限说明
【权限】 【权限级别】 【权限说明】
create 数据库、表或索引 创建数据库、表或索引权限
drop 数据库或表 删除数据库或表权限
grant option 数据库、表或保存的程序 赋予权限选项
alter 表 更改表,比如添加字段、索引等
delete 表 删除数据权限
index 表 调用索引权限
insert 表 数据写入权限
select 表 数据查询权限
update 表 数据修改权限
create view 视图 创建视图权限
show view 视图 查询视图权限
alter routine 存储过程 更改存储过程权限
create routine 存储过程 创建存储过程权限
execute 存储过程 执行存储过程权限
file 服务器 文件访问权限
create temporary tables 服务器 创建临时表权限
lock tables 服务器 锁表权限
create user 服务器 创建用户权限
process 服务器 查询连接进程权限
reload 服务器 执行flush-hosts, flush-logs, flush-privileges, flush-status, flush-tables, flush-threads, refresh, reload等命令的权限
replication client 服务器 复制权限
show databases 服务器 查看数据库权限
shutdown 服务器 关闭服务器权限
super 服务器 执行kill线程权限