另外当线上环境设置了read_only或super_readonly时即使是高版本的MySQL也无法对更新请求执行EXPLAIN。需要进行SELECT转换。

    JSON格式的EXPLAIN包含的内容很丰富,但不便于人查看,信息解读的时候会将JSON和Vertical格式统一转换成传统格式。Golang处理JSON格式需要提前定义结构体,这里不得不向gojson献出膝盖,要是没有这个工具也许我们暂时会放弃对JSON格式的支持。

    5.7之前的版本Filtered计算可能出现大于100%的,为了不对用户产生困扰,soar会将大于100%的Filered化整为100%。