各位大佬,有个奇葩的技术问题

2025 年 2 月 17 日
 ZeekChatCom

客户买了一套闭源的程序用于运营。MySQL 数据库用的是 CDB ,但是现在遇到一个问题:

因为那套程序对于数据库的优化明显不足,有一些很要命的慢查询拖慢整个库。于是,我们加了 2 个索引。性能问题暂时是解决了。

但是奇葩的是,这套程序会主动检测索引,然后给 DROP 掉。频繁的掉索引,我们就写了个定时任务去加索引。于是这套程序就是在不断的 add index 和 drop index, 因为刚开始频率不是很高,所以勉强能用。

但是最近每天的频率越来越高,导致不可用时间占比越来越多。到了无法忍受的地步。

我想的解决办法:给 CDB 这个用户去除索引的权限。但是程序会报错,无法运行。

现在想求教,有没有类似的中间件,可以在不修改代码的情况下,欺骗客户端,丢弃掉 drop index 的操作而不会报错?

10481 次点击
所在节点    MySQL
78 条回复
37Y37
2025 年 2 月 17 日
卧槽!这真他么的是个人才
evan9527
2025 年 2 月 17 日
天才,是不是提速要加钱。
lwldcr
2025 年 2 月 17 日
第一反应跟 2 楼一样 是不是等着别人跟他付费提速呢
cvbnt
2025 年 2 月 17 日
查了下 ProxySql 和 MaxScale 可以主动拦截掉指定语句
lidlesseye11
2025 年 2 月 17 日
hhhhh 神奇
不太懂但是可以搜索关键字 mysql proxy ,感觉应该可以解决你的问题
shakaraka
2025 年 2 月 17 日
不得不说,很牛逼
Erroad
2025 年 2 月 17 日
同意楼上,套层 mysql proxy ,在这层 proxy 里面过滤掉 drop 索引的 SQL
googlefans
2025 年 2 月 17 日
使用 SQL 代理中间件(如 ProxySQL )拦截并忽略 DROP INDEX 语句
pagxir
2025 年 2 月 17 日
mysql 不是开源,直接改源码
MaiGe
2025 年 2 月 17 日
哈哈哈哈哈哈哈哈哈哈哈哈哈
ocsp
2025 年 2 月 17 日
开眼了!
kenvix
2025 年 2 月 17 日
明显是要你们加钱。推荐 ProxySQL
my3157
2025 年 2 月 17 日
说一个另类的方案, 类似破解软件的思路, 比如 java 写的可以用 JByteMod hook 掉判断
spiffing
2025 年 2 月 17 日
开眼界了
Int100
2025 年 2 月 17 日
??? 开拓眼界了
y1y1
2025 年 2 月 18 日
频率越来越高??
viking602
2025 年 2 月 18 日
无敌 哈哈哈哈哈 这是等着付费优化的
layxy
2025 年 2 月 18 日
这不是很明显的付费优化点吗
dododada
2025 年 2 月 18 日
命令触发器试试呢; plugin 是做 binlong 前后处理的,应该不行
dumbbell5kg
2025 年 2 月 18 日
写个 javaagent 改字节码

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://v2ex.ih06.com/t/1112124

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX