2012-07-12 84 views
1

我對mysql有特殊的安全需求。我需要強制限制查詢返回的行數,如果返回的行將超過一百萬行,則會發出錯誤。這裏是設置 -MySQL - 限制(強制)爲任何查詢返回的行數

需要 - 該數據具有數百萬行的100S,我們不希望客戶端向下運行的服務器或做一個完整的提取(也絕對不會需要所有的行,就聚合)這個想法是,如果他們需要的話,他們會遇到一個錯誤或障礙,然後來找我們解釋爲什麼他們需要用查詢拉出這麼多行。

系統 - 客戶端可以使用任何查詢工具,因此我們無法控制生成的查詢。因此,我們不能使用似乎是解決方案無處不在的限制x。

我試過尋找一個解決方案,現在看來,唯一的方法就是在應用程序級別(我們不擁有它)。

有什麼辦法可以達到這個目的嗎?

設置

1-我們需要啓用SSL。

2- MySQL 5.5

謝謝!

J

回答

1

看起來你可能會接近MySQL代理。

https://launchpad.net/mysql-proxy

操縱結果看到這個頁面。不知道它做了緩衝或無緩衝讀,或者如果可以取消結果的讀或不...

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

它是開源的,所以你也許可以僱人,如果調整它也需要。

可能有其他方法來限制數據庫服務器的超載。看看這個鏈接獲取更多信息:

MySQL - can I limit the maximum time allowed for a query to run?

+0

這是一件事我正在考慮,但現在看來,這不會允許SSL連接:(上的任何想法嗎? – Jai 2012-07-12 22:56:20