为 MySQL 表实现审计
Posted
技术标签:
【中文标题】为 MySQL 表实现审计【英文标题】:Implementing Auditting for a MySQL Table 【发布时间】:2018-12-31 21:36:48 【问题描述】:我想记录对我的 mysql 表的更改。我想我可以:
在应用端,每次插入/更新/删除内容时插入审计日志 或者,我可以使用 MySQL 触发器插入审计日志。要确定谁(哪个应用程序用户触发了此更改,我将有一个lastUpdatedBy
列)。但是我如何为 DELETE 执行此操作?
哪种方法更好?或者什么是适当的/工业标准?
【问题讨论】:
你检查过hibernate-envers吗? 你试过了吗? dba.stackexchange.com/questions/178213/… 【参考方案1】:Mysql 企业版提供审计插件来处理你的审计。检查下面的链接
https://www.mysql.com/products/enterprise/audit.html
【讨论】:
这是否要求每个应用程序用户也有 1 个 DB 用户?这是推荐的方式吗? 您可以参考官方网站上的指南和文档。 dev.mysql.com/doc/refman/8.0/en/… 建议使用,但仍然完全取决于您当前的要求。 请详细说明您的要求,以便我为您提供更多建议 我希望能够知道哪个应用程序用户做了某事。让我们假设它是一个电子商务应用程序,当用户 A 编辑他的个人资料时,我想要一个审核日志条目。同样,当自动化系统任务更新记录时,例如我也想要一个日志条目。因此,它与用于运行查询的 MySQL 用户帐户无关,而是与应用程序帐户相关联。以上是关于为 MySQL 表实现审计的主要内容,如果未能解决你的问题,请参考以下文章