mysql中怎么修改所有的definer
发表于:2025-11-07 作者:千家信息网编辑
千家信息网最后更新 2025年11月07日,本篇文章给大家分享的是有关mysql中怎么修改所有的definer,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。mysql中的defin
千家信息网最后更新 2025年11月07日mysql中怎么修改所有的definer
本篇文章给大家分享的是有关mysql中怎么修改所有的definer,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。
mysql中的definer是什么,有什么作用?
先授权一个: grant all on testdb.* to 'user1'@'%' identified by '000000' with grant option; 然后我们创建一个存储过程如下:
USE `testdb`;
DROP procedure IF EXISTS `user_count`;DELIMITER $$
USE `testdb`$$
CREATE DEFINER=`root`@`%` PROCEDURE `user_count`() LANGUAGE SQL NOT DETERMINISTIC CONTAINS SQL SQL SECURITY INVOKER COMMENT '' BEGIN select count(*) from mysql.user; END$$DELIMITER ;
用root帐号登陆:
mysql> use testdb;
Database changedmysql> call user_count();
+----------+ | count(*) | +----------+ | 3 | +----------+ 1 row in set (0.00 sec)Query OK, 0 rows affected (0.00 sec)可以正常查询出来。我们再用user1进行登陆:mysql> use testdb;
Database changedmysql> call user_count();ERROR 1142 (42000): SELECT command denied to user 'user1'@'localhost' for table 'user'
发现系统报错查询不到了,这是因为我们在上述定义的SQL SECURITY值为INVOKER,存储过程执行过程中会以user1具有的权限来执行,其中调用到了mysql的库,而我们的user1帐户只有testdb库的使用权限,所以会返回失败。
如果方便修改mysql中所有已经定义到的definer?
现在在mysql涉及的definer有view、trigger、function、procedure、event。我们一个个作介绍。
1.修改function、procedure的definer
update mysql.proc set definer='user@localhost'; -- 如果有限定库或其它可以加上where条件
4.修改trigger的definer
Flush tables with readlock
Unlock tables
以上就是mysql中怎么修改所有的definer,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注行业资讯频道。
过程
更多
权限
知识
篇文章
存储
查询
登陆
实用
作用
只有
就是
工作会
帐户
文章
有限
条件
看吧
知识点
系统
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
酒店网络安全方案设计
动易 数据库 标签表
金税三期数据库
网络安全英文版本ppt
熟悉idc内常见的各品牌服务器
与软件开发有关的大学
python软件开发难学吗
财税系统软件开发
数据中心服务器有多少种
社交情感数据库
李飞飞数据库的未来
战地2武器全解服务器
森趣互联网科技股份有限公司
抗量子密码 信息网络安全
百度网络安全行家
霞浦县彤宾网络技术服务部
vivoz5x服务器地址怎么看
连接共享打印机网络安全去掉
计算机网络安全ic卡认证的缺点
我的世界怎么租服务器
网络安全和美国有什么关系
南京节能软件开发定制
配置一台服务器
软件开发 源代码
惠普电脑代理服务器在哪
电脑网络技术解决方案
织毛衣视频软件开发
西文数据库中 字段
郑州仁峰软件开发有限l
网络技术与应用春考212分