1

有没有办法配置一个 mysql 表,以便可以写入和读取但不能删除?

例如,一个表包含许多在法律上很重要且绝对不能删除的日志。

4

4 回答 4

3

您只需授予相关表的INSERT 和 SELECT 权限(这可以防止更改行的可能性)

GRANT INSERT,SELECT ON mydb.mytable 
TO secureduser@localhost 
IDENTIFIED BY 'password';

从此,您将继续为该用户向数据库中的其他表添加更广泛的权限。

此外,请查看为此类审计跟踪应用程序定制设计的存档存储引擎。

于 2009-08-26T07:35:39.033 回答
2

撤销所有用户对该表的删除权限。

于 2009-08-26T07:26:53.340 回答
1

另一种选择是使用存档存储引擎。它只允许插入,不允许更新或删除(来自任何人 - 甚至是特权帐户)

于 2009-08-26T07:39:01.927 回答
0

您可以按照他在下面所说的那样做,或者...您可以做的是以数字形式为用户提供“角色”,然后将此数字传递给将删除该行的脚本...但是如果传递的数字低于某个“最低角色期望”然后他们被拒绝访问脚本?

于 2009-08-26T07:27:11.250 回答