MySQL 存储过程 函数 routine 权限
MySQL 存储过程 函数 routine 权限
Table of Contents
1 mysql存储过程/函数权限
Mysql 某个用户在执行存储过程、函数时,需要检查相关对象的操作权限,比如是否有执行 该函数的权限 ,某个用户是否操作(DML)相关对象的权限 。
在创建存储过程或者函数时,有一个关键词,sql_security, 该关键词决定了对哪个用户进行权限检查。下面是创建存储过程或者函数的语法:
delimiter // -- 声明分隔符(命令结束符) create definer = user@hostname | current_user [procedure| function] 对象名(参数) comment '注释' sql security definer | invoker -- sql 的安全设置 begin body end // delimiter ; -- 声明分隔符(命令结束符)
1.1 相关对象操作权限检查
sql_security 主要 是检查调用 者或者definer指定的用户,有没有操作相关对象的权限 。 该选项有两种值可选,一个是definer,一个是invoker.
DEFINER
definer 检查指定的用户, 创建存储过程时可以省略掉。省略时,默认DEFINER=CURRENT_USER.
sql security 设置为definer时,则数据库根据definer 是否有操作相应对象的权限 。
INVOKER
检查调用存储过程/函数的用户是否有操作相应对象的处理权限 。
1.2 执行权限
Mysql可以(取消)授权给指定用户去执行某个存储过程或者函数等。
授权给指定用户
grant execute on <schema>.<procedure_name> to 'user'@'host';
取消授权
revoke execute on <schema>.<procedure_name> from 'user'@'host';
MySQL 存储过程 函数 routine 权限的更多相关文章
- mysql 存储过程 函数 触发器
mysql存储过程与函数 存储过程下载 demo mysql> delimiter // -- 这里//为修改默认分隔符: mysql> CREATE PROCEDURE simplep ...
- Paip.断点调试MYSQL存储过程跟函数的解决方案大法
Paip.断点调试MYSQL存储过程跟函数的解决方案大法 作者Attilax , EMAIL:1466519819@qq.com 来源:attilax的专栏 地址:http://blog.csdn ...
- mysql使用存储过程&函数实现批量插入
写这边文章的目的,是想结合mysql 存储过程+函数完成一个批量删除的功能吧...正好也好加深下对procedure和function的熟练操作吧...废话不多说,我就直接上表结构啦哈,如下: cre ...
- Mysql 存储过程、函数、触发器和视图的权限检查
当存储过程.函数.触发器和视图创建后,不单单创建者要执行,其它用户也可能需要执行,换句话说,执行者有可能不是创建者本身,那么在执行存储过程时,MySQL是如何做权限检查的? 在默认情况下,MySQL将 ...
- MySQL创建存储过程/函数需要的权限
alter routine---修改与删除存储过程/函数 create routine--创建存储过程/函数 execute--调用存储过程/函数 下面有一篇介绍MySQL所有权限的博文 http:/ ...
- 12.Mysql存储过程和函数
12.存储过程和函数12.1 什么是存储过程和函数存储过程和函数是事先经过编译并存储在数据库中的一段SQL语句的集合,调用存储过程和函数简化应用开发人员的工作,减少数据在数据库和应用服务器之间的传输, ...
- 从MySQL到ORM(三):连接、存储过程和用户权限
一.联结表 数据仍使用前文中的数据. 1.子查询 作为子查询的SELECT语句只能查询单个列.企图检索多个列将返回错误. -- 作为查询条件使用 -- 查看TNT2订单对应的客户ip(order表) ...
- mysql存储过程和函数(一)
存储过程和函数是事先经过编译并存储在数据库的一段sql语句集合,调用存储过程和函数可以简化应用程序开发人员的很多工作,减少数据在数据库和应用服务器之间的传输,对提高数据运行效率是有好处的. 存储过程和 ...
- 12 MySQL存储过程与函数
存储过程和函数 存储过程和函数是事先经过编译并存储在数据库中的一段SQL语句的集合. 调用存储过程和函数可以简化应用开发人员的工作,减少数据在数据库和应用服务器之间的传输,提高数据处理 ...
随机推荐
- SYSLINUX官方文档
帮助正确认识SYSLINUX http://www.syslinux.org/wiki/index.php/Doc/syslinux http://www.syslinux.org/wiki/inde ...
- 利用openssl完成自签发证书步骤--精华版
#CentOS 7 CA目录 cd /etc/pki/CA #建立 demoCA 目录结构mkdir -p ./demoCA/{private,newcerts}touch ./demoCA/inde ...
- VM12及CentOS-6.10的安装
VM12的安装破解步骤 1:打开VMware 12安装界面后,点击[下一步]2:勾选[我接受许可协议中的条款]安装VMware Workstation 12 ,然后点击[下一步]3:修改默认安装路径, ...
- ad gebber
双层 四层
- python+Appium自动化:记录遇到的坑
1.打开 uiautomatorviewer同步的的时候突然报错 Error while obtaining UI hierarchy XML file: com.android.ddmlib.Syn ...
- 部署nginx脚本
cd nginx-1.12.2useradd -s /sbin/nologin nginx./configuremakemake installyum -y install mariadb maria ...
- JAVA 日期操作
1.用java.util.Calender来实现 Calendar calendar=Calendar.getInstance(); calendar.setTime(new Date()); Sys ...
- ThreadPoolTaskExecutor使用详解(转)
当并发或者异步操作,都会用到ThreadPoolTaskExecutor.现在对线程池稍作理解. /*** *@Auth dzb *@Date 22:29 2018/8/29 *@Descriptio ...
- react入门及简单配置
直接script引入的不说了 1.npm i -g create-react-app 2.create-react-app my-app (其中my-app为项目名称) 3.进入项目cd my-app ...
- react-native-swiper的Github地址
https://github.com/liyinglihuannan/react-native-swiper https://www.jianshu.com/p/4dba338ef37a(中文版