mysql的权限控制主要是通过mysql库下的db,user,host,table_priv,column_priv表控制。

由于权限信息数据量比较小,所以mysql在启动时会将所有的权限消息加载到内存。
所以每次手工修改相关权限表时需要通过 flush privileges命令来重新加载。
但是如果是通过grant,revoke或drop user,create user等命令这修改权限的话就不需flush
 
mysql中权限一共有五级,按照大小顺序为:global > database > table > column, routine level是对存储过程或函数操作的
 
①, Global Level
全局权限控制,所有权限信息存储在mysql.user表中。Global level是针对整个mysqld的。
grant select,create table on *.* to u1 identified by password;
 
②, Database Level
作用域为指定整个数据库中的所有对象。
grant select,create table on databaseName.* to u1 identified by password;
 
user database1;
grant drop on * to 'u1'@'%', 'u1'@localhost,u2@'%';
 
③,Table Level
作用域为指定特定用户下的特定表
grant index on test.t1 to 'u1'@localhost
 
④, Column Level
作用域为特定库下特定表中的某些列。
Column级别的权限有insert,select,update。授权方式: grant select(c1,c2,c3) on test.t1 to 'u1'@localhost;
 
⑤, Routine Level
routine level的权限主要只有execute和alter routine两种,主要针对的对象是procedure和function这两种对象,在授权routine level权限时,需要指定数据库和相关对象。
grant execute on test.p1 to 'u1'@'%';

Mysql中五级权限小结的更多相关文章

  1. [转]MySQL中存储过程权限问题

    MySQL中以用户执行存储过程的权限为EXECUTE 比如我们在名为configdb的数据库下创建了如下存储过程,存储过程的定义者为user_admin use configdb; drop proc ...

  2. 详细解读MySQL中的权限

    一.前言 很多文章中会说,数据库的权限按最小权限为原则,这句话本身没有错,但是却是一句空话.因为最小权限,这个东西太抽象,很多时候你并弄不清楚具体他需要哪 些权限. 现在很多mysql用着root账户 ...

  3. 如何创建新用户和授予MySQL中的权限

    原创官网http://www.howtoing.com/how-to-create-a-new-user-and-grant-permissions-in-mysql/ 关于MySQL MySQL是一 ...

  4. 使用命令行将Excel数据表导入Mysql中的方法小结

    从Excel数据表导入MySQL,已经做过好几次了,但每次都会碰到各种问题:invalid utf8 character string, data too long, ...,浪费了不少时间 为了提高 ...

  5. MySQL中Alter用法小结

    alter 方法是我们在处理MySQL数据库中一个常见的方法,能帮助我们更好的处理数据库中的表 1.增加 数据库中表的字段:alter table table_name add [column] co ...

  6. mysql中FILE权限

    FILE权限指的是对服务器主机上文件的访问,数据库用户拥有FILE权限才可以执行select into outfile,load data infile操作. 参考文章:http://blog.itp ...

  7. MariaDB/MySQL用户和权限管理

    本文目录: 1.权限验证 1.1 权限表 1.2 图解认证和权限分配的两个阶段 1.3 权限生效时机 2.用户管理 2.1 创建用户 2.2 create user和alter user 2.3 记录 ...

  8. 2018/09/05《涂抹MySQL》【权限管理】学习笔记(二)

    读 第四章<管理MySQL库与表> 第五章<MySQL的权限管理> 总结 1:当配置好 MySQL 数据库后,发现有几个默认的库,他们的意义和作用?(这里只做简单了解,之后用到 ...

  9. 如何给mysql用户分配权限+增、删、改、查mysql用户

    在mysql中用户权限是一个很重析 参数,因为台mysql服务器中会有大量的用户,每个用户的权限需要不一样的,下面我来介绍如何给mysql用户分配权限吧,有需要了解的朋友可参考. 1,Mysql下创建 ...

随机推荐

  1. wireshark初学者使用

    介绍 Wireshark是一款网络封包分析软件,截取网络封包,显示其封包的详细信息.日常工作中用的比较多.在使用wireshark之前须了解常用的网络协议.如:tcp,http,ip,udp等.(其实 ...

  2. 8.初识Lock与AbstractQueuedSynchronizer(AQS)

    1. concurrent包的结构层次 在针对并发编程中,Doug Lea大师为我们提供了大量实用,高性能的工具类,针对这些代码进行研究会让我们对并发编程的掌握更加透彻也会大大提升我们队并发编程技术的 ...

  3. CentOS7 LVM添加硬盘及扩容

    一.LVM简介 LVM是 Logical Volume Manager(逻辑卷管理)的简写,它是Linux环境下对磁盘分区进行管理的一种机制.LVM将一个或多个磁盘分区(PV)虚拟为一个卷组(VG), ...

  4. git推送文件到远程仓库

    远程仓库未创建 git init 初始化一只本地仓库 把你的项目扔进去(或者基于初始化仓库建立项目vue init webpack demoxxxx) git status //查看状态 git ad ...

  5. DB2导入导出数据

    1.导出表数据到txt文件: export to /brcb_edp/data_public_edp/file/CCDM/file/FILE_CCDM_DR_CARD_CUST_DET.txt of ...

  6. 20165202 实验一 Java开发环境的熟悉

    一.实验内容及步骤 (一)使用JDK编译.运行简单的Java程序 建立"自己学号exp1"的目录 mkdir 20165202exp1 进入目录 cd 20165202exp1 在 ...

  7. SpringMVC札集(10)——SSM框架整合

    自定义View系列教程00–推翻自己和过往,重学自定义View 自定义View系列教程01–常用工具介绍 自定义View系列教程02–onMeasure源码详尽分析 自定义View系列教程03–onL ...

  8. [置顶] flume高并发优化——(15)中间件版本升级

    在系统平稳运行一年的基础上,为提供更好的服务,现针对java,kafka,flume,zk,统一进行版本升级,请各位小伙伴跟着走起来,不要掉队啊! 名称 老版本号 新版本号 jdk 1.7.0_25 ...

  9. 从JDK源码角度看Boolean

    Java的Boolean类主要作用就是对基本类型boolean进行封装,提供了一些处理boolean类型的方法,比如String类型和boolean类型的转换. 主要实现源码如下: public fi ...

  10. python全局替换文件内容脚本第1版

    #!/usr/bin/python #coding=utf8 """ # Author: xiaoyafei # Created Time : 2018-05-08 09 ...