mysql:我们不能在系统表上创建触发器吗?

mysql: Cant we create triggers on system tables?(mysql:我们不能在系统表上创建触发器吗?)
本文介绍了mysql:我们不能在系统表上创建触发器吗?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试通过在其上编写触发器来审核 mysql.user 表中的权限更改.

I am trying to audit the privilege changes in mysql.user table by writing a trigger on it.

insert trigger: will capture who gave the new permissions and when
update trigger: will capture who changes the privileges from what[old privilege]
remove trigger: will capture who removed the privileges and what are they

现在,我在编写时遇到错误

Now, I am getting an error while writing like

ERROR 1465 (HY000): Triggers can not be created on system tables

我们可以在系统表上创建触发器吗,有什么解决办法吗,或者更高版本会支持它[> 5.1.61]?

Can we create a trigger on system tables, Is there any work around or it will be supported in higher versions[> 5.1.61] ?

提前致谢.

推荐答案

不,我们不能.即使我们最关心的权限是 allsuper

No we can not. Even if we have the best concerned privileges are all and super

查看 mySql 提供的(全部)和(超级)权限

尝试所有类型的权限后

grant super on *.* to root@localhost
grant all on *.* to root@localhost

我在不同的表上尝试过最简单的触发器 mysql.db 并得到相同的错误

I have tried simplest trigger on different tables mysql.db and got same error

无法在系统表上创建触发器//请接受这一点残酷的事实

Triggers can not be created on system tables // Please accept this bitter truth

如果你发现任何地方都可以在系统表上创建触发器,那就错了

If you found anywhere that triggers can be created on system tables, simply that is wrong

这篇关于mysql:我们不能在系统表上创建触发器吗?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!

本站部分内容来源互联网,如果有图片或者内容侵犯您的权益请联系我们删除!

相关文档推荐

Hibernate reactive No Vert.x context active in aws rds(AWS RDS中的休眠反应性非Vert.x上下文处于活动状态)
Bulk insert with mysql2 and NodeJs throws 500(使用mysql2和NodeJS的大容量插入抛出500)
Flask + PyMySQL giving error no attribute #39;settimeout#39;(FlASK+PyMySQL给出错误,没有属性#39;setTimeout#39;)
auto_increment column for a group of rows?(一组行的AUTO_INCREMENT列?)
Sort by ID DESC(按ID代码排序)
SQL/MySQL: split a quantity value into multiple rows by date(SQL/MySQL:按日期将数量值拆分为多行)