我有一个与 Mysql 对话的 PHP 应用程序。该应用程序使用用户名和密码连接到 MySQL。任何通过应用程序对 MySQL 数据库进行更改的人都可以记录他们的用户名,这可以在以后进行审核。然而,有时我们需要从后台做一些操作,即直接进入数据库。我想知道的是,是否可以记录有关用户直接登录数据库(可能使用 phpMyAdmin)并对特定表进行更改的信息,以及以后如何查看这些信息?此外,如果直接通过后端对特定表进行更改,是否有可能触发一些触发器,如果从前端进行相同的更改,即使用 PHP 应用程序,那么这些触发器不会被触发?
-提前致谢
最佳答案
- 是的,您可以通过在需要跟踪的表上设置大量触发器来记录对数据库所做的更改。您可以使用 MySql 的 USER() 函数来获取当前用户名。
- 使用已经提到的 USER() 函数,您可以确定是否需要记录事件(我假设您在 php 脚本和 phpMyAdmin 中使用了不同的用户)
关于php - 通过以下方式检测 MySQL 中的直接更改,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6546505/