1

我对 mysql 有特殊的安全需求。我需要强制限制查询返回的行数,如果返回的行将结束,例如一百万行,则会发出错误。这是设置 -

需要- 数据有数以百万计的行,我们不希望客户端运行服务器或进行完整提取(他们永远不需要所有行,只是聚合)这个想法是,如果他们需要它,他们遇到了错误或障碍,并来找我们解释为什么他们需要通过查询拉出这么多行的原因。

系统- 客户可以使用任何查询工具,因此我们无法控制生成什么查询。因此,我们不能使用 Limit x,这似乎是到处建议的解决方案。

我曾尝试寻找解决方案,目前看来唯一的方法是在应用程序级别(我们不拥有)。

有什么办法可以做到这一点?

环境

1-我们需要启用 SSL。

2- MySQL 5.5

谢谢!

Ĵ

4

1 回答 1

1

似乎您可以接近 MySQL Proxy。

https://launchpad.net/mysql-proxy

有关操作结果,请参阅此页面。不确定它是否进行缓冲或非缓冲读取,或者您是否可以取消读取结果...

http://dev.mysql.com/doc/refman/5.1/en/mysql-proxy-scripting-read-query-result.html

它是开源的,因此如果需要,您也可以聘请某人对其进行调整。

可能还有其他方法可以限制数据库服务器的过载。查看此链接以获取更多信息:

MySQL - 我可以限制查询运行的最长时间吗?

于 2012-07-12T18:38:54.993 回答