MySQL 学习<十二> MySQL权限表
来源:互联网 发布:淘宝网情侣装dongji 编辑:程序博客网 时间:2024/05/21 09:37
MySQL是一个多用户数据库,具有功能强大的访问系统可以为不同用户指定允许的权限;其中root用户是超级管理员,拥有所有权限,普通用户只拥有被授予的各种权限。
权限表
在MySQL数据库中,有mysql_install_db脚本初始化权限表,存储权限的表有:
1.user表
2.db表
3.host表
4.table_priv表
5.columns_priv表
6.proc_priv表
user表
用户列包括Host(主机名)、User(用户名)、Password(密码)。User和Host为user表的联合主键。当用户与服务器之间建立连接时,输入的信息只有匹配user表的字段才允许连接建立。
权限列的字段决定了用户的权限,描述了在全局范围内允许对数据和数据库进行的操作。包括普通权限(操作数据库)和高级权限(管理数据库)。
user表中对应的权限是针对所有用户数据库的,即表中的XXX_priv字段,类型为ENUM,取值Y或N,默认为N。需要修改权限,可以使用GRANT或UPDATE语句更改。
只有6个字段,两个是ssl相关,两个是x509相关,两个是授权插件相关。ssl用于加密;x509标准可用于标识用户;Plugin字段标识可以用于验证用户身份的插件,如果字段为空,服务器使用内建授权验证机制验证用户身份。可以 通过SHOW VARIABLES LIKE 'have_openssl'语句来查询服务器是否支持ssl功能。
4.资源控制列
用来限制用户使用的资源,4个字段:
1).max_questions:用户每小时允许执行的查询操作次数
2).max_updates:……更新操作次数
3).max_connections:……连接操作次数
4).max_user_connections:用户允许同时建立的连接次数
当用户的操作达到限制时,用户被锁定,知道下一小时才可以继续执行对应操作。
db表和host表
db表,存储了用户对某个数据库的操作权限,决定用户能从哪个主机存取哪个数据库;
host表,存储了某个主机对数据库的操作权限,配合db权限表对给定主机上数据库级操作权限做更细致的控制。
db表比较常用,host表一般很少使用。
1.用户列
Host、User、Db字段,标识从某个主机连接某个用户对某个数据库的操作权限,这3个字段组合构成db表的主键。
2.权限列
user表中的权限是针对所有数据库的,如果希望用户只对某个数据库有操作权限,那么需要将user表中对应的权限设置为N,然后再db表中设置对应数据库的操作权限。
tables_priv表和columns_priv表
tables_priv表有8个字段,分别是Host、Db、User、Table_name、Grantor、Timestamp、Table_priv和Columns_priv,各个字段说明如下:
1.Host、Db、User和Table_name4个字段分别表示主机名、数据库名、用户名和表名;
2.Grantor表示修改该记录的用户;
3.Timestamp字段表示修改该记录的时间;
4.Table_priv表示对表的操作权限包括Select、Insert、Update、Delete、Create、Drop、Grant、References、Index和Alter;
5.Columns_priv字段表示对表中的列的操作权限,包括Select、Insert、Update和References。
columna_priv表只有7个阻断,分别是Host、Db、User、Column_name、Timestamp和Columns_priv,其中Column_name用来指定对哪些数据列具有操作权限。
procs_priv表
- MySQL 学习<十二> MySQL权限表
- MySQL学习笔记之二十二 权限系统工作原理
- Mysql(十二)
- mysql基础---用户管理和权限设置(十二)
- MySQL学习笔记之十二 数据库目录
- 一千行MySQL学习笔记(十二)
- mysql 学习记录(十二)--触发器
- Mysql学习笔记十二——数据类型
- mysql学习之八:mysql权限管理
- 【mysql 用户权限管理】mysql 权限管理学习
- mysql学习6 权限管理
- mysql 学习记录(二十二)--mysql的应用优化
- [MySQL] 探索权限表
- mysql 权限表说明
- 探索MySQL权限表
- mysql user权限表
- 解析MySQL权限表
- MySql权限表
- Android 学习笔记-布局
- PHP获得一些随机上传名字防止重命名
- Vjudge攻略——ACdream-1099
- Python学习笔记(9) -- string.letters(关键词:a-zA-Z的集合)
- myql 统计优化
- MySQL 学习<十二> MySQL权限表
- 【读书笔记】机器学习实战 第7章 基于单层决策树的adaboost
- 将字符串转换成整数[Java]
- JavaWeb--使用Websocket实现在线聊天功能
- IOS警告as the name of the previous parameter rather than as part of the selector
- Struts(五)json解析
- 150. Evaluate Reverse Polish Notation
- 光流基本介绍
- 使用PHP函数写验证码截取一些字符串