我需要从mysql数据库中永久清除单个记录(mssql也会很有趣)。我所说的净化是指不可恢复地把它遗忘。
我需要这一点,要么符合欧盟gdpr,也为客户谁想要确保数据从mysql永久删除。
据我所知
从id=1的表中删除
将从表空间和索引中删除数据,但不会从事务日志中删除。要实现这一点,需要执行收缩。但即使比记录还多,磁盘上仍然存在二进制文件。
我需要做的是真正地销毁数据库记录,甚至连黑客耶稣都无法恢复。
我已经花了一些心思,第一个想法是不要删除记录,而是用随机数据覆盖列中的数据。据我所知,mysql文档会覆盖旧数据的物理内存。因此,如果有一个列secret\u列包含数据机密信息,我将用'x'覆盖该列,收缩数据库,并且该列的旧值应该消失。另一个更安全的选项是同步加密secret\列并将密钥存储在另一列cypherkey中。然后,当我想删除记录时,我解密列,创建一个临时内存密钥,用临时密钥加密数据并将其写回数据库。这应该会永久性地破坏信息—但这在性能方面不可能与索引列一起使用。
我很清楚,数据库的任何备份都会包含清除的数据。这是另一个需要解决的奇迹。
我会很感激你对这个问题有什么想法或(更好的)解决办法。谢谢,太多了。
暂无答案!
目前还没有任何答案,快来回答吧!