mysql - 使用 information_schema.processlist 创建 MySQL 登录触发器?
问题描述
是否可以为 MySQL 创建登录触发器?我正在尝试玩processlist
桌子,但它不起作用:
use information_schema
CREATE TRIGGER test AFTER UPDATE ON information_schema.processlist FOR EACH ROW BEGIN END;
结果是:
ERROR 1044 (42000): Access denied for user 'root'@'localhost' to database 'information_schema'
这里出了什么问题?
解决方案
INFORMATION_SCHEMA
表是特殊的,它们的内容实际上是在查询时动态生成的。所以你不能对它们使用 DML 或 DDL 查询。
要在连接上执行某些操作,您可以使用服务器init_connect
配置变量,您必须注意,出于安全原因,init_connect
仅适用于非超级用户。
https://dev.mysql.com/doc/refman/5.7/en/server-system-variables.html#sysvar_init_connect
推荐阅读
- php - PHP - 将值从十六进制区分为字符串
- identityserver4 - 无法验证 Identityserver3 颁发的令牌
- qt - 如何防止在 make clean 上运行 qmake?
- python - 使用 scipy 和实验数据进行多参数优化
- apache-kafka - 如何找到卡夫卡消费者的费率?
- php - 使用php将é转换为e
- javascript - materializecss 自动完成 onchange
- c# - Xamarin Android - 使用 Android NDK 保护 API 密钥
- ruby-on-rails - AWS CodeDeploy 和 Ruby 应用程序
- java - java中的死线程