如果我将set optimizer_switch='block_nested_loop=off'
设置为建议here,我是否可以100%确定选项on
和off
的结果相同?MySQL嵌套循环优化器开关是否会影响查询结果?
我想将此选项更改为off
,因为它将查询性能从56s提高到1s。
这个优化器开关有什么优点和缺点,它是安全的吗?
如果我将set optimizer_switch='block_nested_loop=off'
设置为建议here,我是否可以100%确定选项on
和off
的结果相同?MySQL嵌套循环优化器开关是否会影响查询结果?
我想将此选项更改为off
,因为它将查询性能从56s提高到1s。
这个优化器开关有什么优点和缺点,它是安全的吗?
是的,它是安全的。 optimizer_switch
告诉MySql如何搜索查询的答案。无论如何设置optimizer_switch
,它将为您的查询生成相同的结果(除非MySql中存在错误)。
使用set optimizer_switch='block_nested_loop=off'
的唯一缺点是其他查询可能会变慢,因此您可能需要在执行查询后将其设置回on
。
如果您无法发布公司代码,请举例说明您自己的代码以证明问题。 – Cfreak
我不认为这是必要的,因为它不是问题的关键点。 – Daredzik
您可以删除不相关问题的一部分。只是总结前两段的内容,如'有一些查询很慢,但如果我设置...'等。 –