最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501
当前位置: 首页 - 科技 - 知识百科 - 正文

MySQL统计数据

来源:懂视网 责编:小采 时间:2020-11-09 16:21:03
文档

MySQL统计数据

MySQL统计数据:统计数据的重要性相信了解ORACLE数据库的都非常清楚,他是生成执行计划的唯一标准,所以统计数据是否准确直接影响到执行计划的正 统计数据的重要性相信了解Oracle数据库的都非常清楚,他是生成执行计划的唯一标准,所以统计数据是否准确直接影响到执行计划的
推荐度:
导读MySQL统计数据:统计数据的重要性相信了解ORACLE数据库的都非常清楚,他是生成执行计划的唯一标准,所以统计数据是否准确直接影响到执行计划的正 统计数据的重要性相信了解Oracle数据库的都非常清楚,他是生成执行计划的唯一标准,所以统计数据是否准确直接影响到执行计划的

统计数据的重要性相信了解ORACLE数据库的都非常清楚,他是生成执行计划的唯一标准,所以统计数据是否准确直接影响到执行计划的正

统计数据的重要性相信了解Oracle数据库的都非常清楚,他是生成执行计划的唯一标准,所以统计数据是否准确直接影响到执行计划的正确性, 关于MYSQL虽然没有ORACLE那么多维度的统计数据(比如直方图)但是还是有的,MYSQL 5.6后分为2种统计数据。

1、永久化的统计数据
默认的5.6.6后使用时这种方式,影响他的参数有
innodb_stats_persistent_sample_pages 每次采样的块数,默认为20
innodb_stats_auto_recalc 是否开启自动收集,默认为修改量超过10%的数据
innodb_stats_persistent 默认为ON,是否使用永久化的统计数据


永久化的统计数据存储在innodb_index_stats和innodb_table_stats中,官方文档说统计数据并非实时的,也就是收集统计数据会滞后几分钟,如果想要及时的更新统计

数据需要手动执行ANALYZE TABLE(In some cases, statistics
recalculation may be delayed by a few seconds. If up-to-date statistics are
required immediately after changing significant portions of a table, run ANALYZE
TABLEto initiate a synchronous (foreground) recalculation of statistics)

如果统计数据不准可能需要修改innodb_stats_persistent_sample_pages的值更大,如果analyze table过慢可以考虑减少innodb_stats_persistent_sample_pages的值更小。这两个表为INNODB的表


2、非永久化的统计数
如果设置innodb_stats_persistent为OFF就使用这种方式的统计数据,这种方式的统计数据在数据库重启后就丢失,他的统计数据保存在STATISTICS,TABLES两个表中,他们是MEMORY引擎的表,这种方式受影响的参数
innodb_stats_persistent 设置为OFF
innodb_stats_transient_sample_pages 默认为8,为采样块数
innodb_stats_on_metadata 英文描述To have statistics updated when metadata statements such as SHOW TABLE STATUS
or SHOW INDEX are run, or when accessing the INFORMATION_SCHEMA.TABLES or
INFORMATION_SCHEMA.STATISTICSt ables, execute the statement SET GLOBAL
innodb_stats_on_metadata=ON

当innodb_stats_persistent设置为ON的时候,默认innodb_stats_on_metadata是OFF的,因为它会影响SHOW TABLE STATUS等的速度

最后我们再来简单描述一下ORCALE的统计数据收集的策略,ORACLE 10G,11G都是通过自动化的作业来收集,默认的11G周1到周5晚上10点开始收集统计数据,周末则是早上6点开始,当然这种收集统计数据并不是全部收集,ORACLE会把修改数量超过10%的TABLES记录到mon_mods_all$内部表中,然后对这些表进行收集,这样来保证统计数据能够尽可能的描述数据的分布,同时ORACLE会通过谓词的使用来判定是否收集直方图, 谓词的使用记录在COL_USAGE$内部视图中,直方图用于判定数据的倾斜,MYSQL在这方面视乎还没有。

声明:本网页内容旨在传播知识,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

文档

MySQL统计数据

MySQL统计数据:统计数据的重要性相信了解ORACLE数据库的都非常清楚,他是生成执行计划的唯一标准,所以统计数据是否准确直接影响到执行计划的正 统计数据的重要性相信了解Oracle数据库的都非常清楚,他是生成执行计划的唯一标准,所以统计数据是否准确直接影响到执行计划的
推荐度:
标签: 数据 数据库 统计
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top