analyze问题

统计信息的收集时间设置如下:

理论上白天应该不会再有收集统计信息的语句发生了,但是在dashboard页面上还是发现了analyze的语句,截图如下:

请问这是为啥?是我设置的时间格式不对吗?

是不是我这时间格式设置的有问题?

有手动收集吗?数据库跟服务器的时区都看下呢

手动收集的,或者数据库时间格式有问题

没有手动集过统计信息
服务器的时区:

数据库的时区是采用了系统时区:| time_zone | SYSTEM |

没有手动收集过统计信息,数据库时间格式采用的是系统的,上面有发

操作系统是CST,analyze是UTC,是不是没能识别啊。。
要不改成一致的试试?

这个具体咋修改呢?

看看以下相关参数配置是什么?

show variables like '%time_zone%';

  1. 可以确定下各个服务器的时区
  2. 可以把time_zone改成Asia/Shanghai试试

你这个system_time_zone 已经是 Asia/Shanghai 了,按理不应该有问题的
尝试指定下time_zone试试吧~

我在再看看吧,谢谢。

集群的时间都正常么?

tidb_auto_analyze_ratio你这个参数没改啊,设置的0.5, 当某个表 tbl 的修改行数与总行数的比值大于 tidb_auto_analyze_ratio就会自动更新统计信息

在查询语句执行时,TiDB 会以 feedback-probability 的概率收集反馈信息,并将其用于更新直方图和 Count-Min Sketch。可通过配置文件修改 feedback-probability,其默认值是 0.05。设置成 0.0 可以关闭这个功能。

注意

在配置文件中如果将 feedback-probability 设置为 0 会导致设置失败并报错。需要设置成 0.0 才可以关闭 feedback-probability

集群的时间是正常的

我的理解是,设定的自动更新统计信息的时间后,只会在设定的时间内更新,不会因为这个值符合自动更新统计信息而自动更新,不然设定的时间有啥作用?

这个feedback-probability还是保持默认,我还是需要统计信息的,我的目的是需要统计信息,只是在凌晨做统计,白天不要进行统计信息的收集。

:+1:还有这么个设置,之前都没有注意到