mysql权限分类

USAGE --无权限,只有登录数据库,只可以使用test或test_*数据库

ALL --所有权限

select/update/delete/super/slave/reload --指定的权限

with grant option --允许把自己的权限授予其它用户(此用户拥有建立账号的权限)

权限级别:

1、. --全库、全表(mysql.user)

2、mysql.* --mysql库下所有表(某库中的所有表)(mysql.db)

3、mysql.user --mysql库中user表(单表)(mysql.table_priv)

4、mysql.user.host --mysql库中user表的host列(mysql.columns_priv)

用户权限:

user@localhost 本地

user@192.168.0.1 某一台主机

user@192.168.0.0/255.555.255.0 内网网段可以登录

user@% 任何机器上都可以登录

登录方式<本地|网络> with grant option ALL<select|insert|update|delete> .

1.新建一个本地帐号u01 可以创建用户可以执行所有的动作对所有库的所有表执行

bash 复制代码
create user 'u01'@'localhost' identified by '123';
grant all on *.* to 'u01'@'localhost' with grant option ; 

2.使用u01来 新建u02使用tcp方式登录 对db01库可以执行任何操作

bash 复制代码
create user 'u02'@'192.168.0.1' identified by '456';
grant all on db01.* to 'u02'@'192.168.0.1';
bash 复制代码
mysql -u u02 -p456 -h192.168.0.1 -P3306

3.新建u03 在客服端192.168.0.254 对db01库中t1表可以执行任何操作

bash 复制代码
grant all on db01.t1 to 'u03'@'192.168.0.254' identified by '789';

4.新建u04 在内网网段192.168.0.0/24 对db01.t1.id 可以执行任何操作

bash 复制代码
grant select,update(id,name) on db01.t1 to 'u04'@'192.168.0.0/24(掩码必须写完整的)' identified by '123456';
update mysql.user set host=192.168.0.0/255.255.255.0 where user='u04';
flush privileges;
grant select,update(id,name) on db01.t1 to 'u04'@'192.168.0.0/255.255.255.0'

5.新建u05 在任何机器上可以登录 对db02全库操作

bash 复制代码
grant all on db02.* to 'u05'@'%' identified by 'redhat';

取消权限revoke

bash 复制代码
revoke all on *.* from 'u01'@'localhost';
delete from mysql.user where user regexp '^u.*';
flush privileges;

不进数据库在外面查看表信息

bash 复制代码
mysql  -uroot -p123 -e "select user,host,password from mysql.user"
相关推荐
程序员南飞35 分钟前
ps aux | grep smart_webrtc这条指令代表什么意思
java·linux·ubuntu·webrtc
StrokeAce35 分钟前
linux桌面软件(wps)内嵌到主窗口后的关闭问题
linux·c++·qt·wps·窗口内嵌
热爱嵌入式的小许5 小时前
Linux基础项目开发1:量产工具——显示系统
linux·运维·服务器·韦东山量产工具
vvvae12347 小时前
分布式数据库
数据库
雪域迷影7 小时前
PostgreSQL Docker Error – 5432: 地址已被占用
数据库·docker·postgresql
bug菌¹8 小时前
滚雪球学Oracle[4.2讲]:PL/SQL基础语法
数据库·oracle
逸巽散人8 小时前
SQL基础教程
数据库·sql·oracle
韩楚风8 小时前
【linux 多进程并发】linux进程状态与生命周期各阶段转换,进程状态查看分析,助力高性能优化
linux·服务器·性能优化·架构·gnu
陈苏同学8 小时前
4. 将pycharm本地项目同步到(Linux)服务器上——深度学习·科研实践·从0到1
linux·服务器·ide·人工智能·python·深度学习·pycharm
Ambition_LAO8 小时前
解决:进入 WSL(Windows Subsystem for Linux)以及将 PyCharm 2024 连接到 WSL
linux·pycharm