如何判断哪个mysql用户在mysql中编辑了一个表

时间:2018-01-24 07:29:19

标签: mysql phpmyadmin innodb

我有一个拥有多个用户的数据库,他们可以在phpMyAdmin中查看/编辑。

其中一个用户通过phpMyAdmin编辑了一行。有没有办法让我知道哪个用户进行了编辑?

注意:自从特定编辑

以来,我们没有触及该行

2 个答案:

答案 0 :(得分:3)

可以添加TRIGGER来捕获USER()的信息。

但是这意味着每个用户在使用phpmyadmin时都必须单独连接,而不是使用一些常用的登录。

答案 1 :(得分:2)

以前获取有关哪个mysql用户执行了更改的信息可能为时已晚。

如果您在更改发生时碰巧启用了慢查询日志,则可能记录了哪个mysql用户执行了更改。

对于某些MySQL实例,还有一个可选的审计插件功能,但由于这需要安装第三方插件,而且我所知道的所有审计插件实现都不易管理,因此它不容易管理。几乎可以肯定,你没有这个。

在任何一种情况下,您最希望的是知道哪个mysql用户执行了更改。

但是phpmyadmin通常被配置为作为一个mysql用户连接,无论哪个人正在操作它。所以,即使你有日志记录,这个mysql用户也是一个共享用户,人类做出这个动作是不确定的。