2

您好我需要创建一个数据库,其中没有数据以 csv 格式或作为转储文件流出。

如果mysql崩溃,数据应该消失但不应该存在恢复..

实施起来可能看起来很愚蠢,但客户的要求只是这样......

因此,任何人都可以帮助我如何限制除 root 用户之外的所有用户的mysqlbump客户端程序和INTO OUTFILE命令。其他用户将具有选择插入更新删除等数据库级别权限但没有全局级别权限..

谁可以帮我这个事 ?

4

3 回答 3

1

我不确定您在寻找什么,但是如果您可以通过 ssh 访问服务器,我建议使用文件系统备份或一些有用的工具,例如 innobackupex而不是 mysqldump。对于大数据 mysqldump 不是好的解决方案。

于 2013-10-10T16:06:04.793 回答
0

你不能。从 MySQL 服务器的角度来看,mysqldump它只是另一个运行大量SELECT语句的客户端。与它们发生的事情(生成转储文件)不是服务器可以控制的。

就其价值而言,这听起来像是一个非常愚蠢的想法,因为这意味着如果发生灾难(例如,硬盘驱动器故障,MySQL 崩溃和损坏表,有人意外删除),将无法从备份中恢复客户端的数据一堆数据等)。在这里做的最聪明的事情是告诉客户你做不到——其他任何事情都会让你自己失败。

于 2013-10-10T16:43:01.113 回答
0

您必须将每个新的 mysql 用户限制为 Select_priv、Lock_tables_priv、file、alter、crete tmp table、execute、create table。所以用户不能做任何事情。即使在 mysqldump 中,他们也无法导出。使用 mysql.user 表。或使用一些工具,如 navicat 。

于 2013-10-10T14:24:33.463 回答