微课sql优化(2)-为什么需要收集统计信息
发表于:2025-01-22 作者:千家信息网编辑
千家信息网最后更新 2025年01月22日,1、为什么需要收集统计信息Cost-based optimizer (CBO),Based on object statistics,优化器统计信息描述数据库中的对象的详细信息, 查询优化器使用这些统
千家信息网最后更新 2025年01月22日微课sql优化(2)-为什么需要收集统计信息
Cost-based optimizer (CBO),Based on object statistics,优化器统计信息描述数据库中的对象的详细信息, 查询优化器使用这些统计信息为每个SQL语句选择最佳执行计划。 数据库将优化器统计信息存储在数据字典中。您可以使用数据字典视图访问这些统计信息。 由于数据库中的对象可能会不断更改,因此必须定期更新统计信息,以便准确描述这些对象。Oracle数据库自动维护优化器统计信息。 11g: Scheduled Maintenance Window Times , In 11g daily maintenance windows are provided. by default these are defined as : Weeknights: Starts at 10 p.m. and ends at 2 a.m. Weekends: Starts at 6 a.m. is 20 hours long. 10g: With Oracle Database 10g the default maintenance window is configured to cover the following periods: 10 pm to 6 am every weekday All weekend (Friday 10 pm to Monday 6 am) 可以使用该DBMS_STATS软件包手动维护优化器统计信息。
自动统计任务能满足大部分数据库的业务需求,但存在特殊情况需要手工收集统计信息, 1、业务表数据被delete、truncate、impdp/imp大批量数据变理时。 2、数据变更量超过10%时。 查询哪些表需要收集统计信息 col table_name for a30 col object_type for a30 select owner, table_name, object_type, stale_stats, to_char(LAST_ANALYZED,'yyyy-mm-dd hh34:mi') last_analyzed from dba_tab_statistics where owner = 'HT' and (stale_stats = 'YES' or last_analyzed is null);
哪些情况需要从新收集统计信息, 1、业务表数据被delete、truncate、impdp/imp大批量数据变更时。 2、数据变更量超过10%时,统计信息状态标记为过期 。
1、为什么需要收集统计信息
Cost-based optimizer (CBO),Based on object statistics,优化器统计信息描述数据库中的对象的详细信息, 查询优化器使用这些统计信息为每个SQL语句选择最佳执行计划。 数据库将优化器统计信息存储在数据字典中。您可以使用数据字典视图访问这些统计信息。 由于数据库中的对象可能会不断更改,因此必须定期更新统计信息,以便准确描述这些对象。Oracle数据库自动维护优化器统计信息。 11g: Scheduled Maintenance Window Times , In 11g daily maintenance windows are provided. by default these are defined as : Weeknights: Starts at 10 p.m. and ends at 2 a.m. Weekends: Starts at 6 a.m. is 20 hours long. 10g: With Oracle Database 10g the default maintenance window is configured to cover the following periods: 10 pm to 6 am every weekday All weekend (Friday 10 pm to Monday 6 am) 可以使用该DBMS_STATS软件包手动维护优化器统计信息。
2、哪些表需要收集统计信息
自动统计任务能满足大部分数据库的业务需求,但存在特殊情况需要手工收集统计信息, 1、业务表数据被delete、truncate、impdp/imp大批量数据变理时。 2、数据变更量超过10%时。 查询哪些表需要收集统计信息 col table_name for a30 col object_type for a30 select owner, table_name, object_type, stale_stats, to_char(LAST_ANALYZED,'yyyy-mm-dd hh34:mi') last_analyzed from dba_tab_statistics where owner = 'HT' and (stale_stats = 'YES' or last_analyzed is null);
3、练习题1、测试统计信息阈值: 变更量超过10%
- 创建测试表:
- 收集统计信息:
- 删除10%数据:
- 查看数据变更信息
- 查看统计信息是否过期
- 再删除一行数据:
- 再次查看统计信息是否过期
4、小结
哪些情况需要从新收集统计信息, 1、业务表数据被delete、truncate、impdp/imp大批量数据变更时。 2、数据变更量超过10%时,统计信息状态标记为过期 。
信息
统计
数据
数据库
业务
对象
大批量
字典
情况
a.m.
查询
测试
特殊
一行
不断
任务
再次
大部分
定期更新
小结
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
网络安全工程税率
机器人运动控制软件开发框架
数据库在哪看附件
小学假期网络安全排查
网络安全监测装置和探针
当前服务器无安全组
网络安全hw行动是什么英文
软件开发专业技能活动
服务器托管服务器租用
统计系统网络安全总结
长春广东网络安全培训攻防技术
做ebay大家都是用啥服务器
网络安全宣教区
美萍软件连接不了数据库
低估软件开发难度
数据库对象如何命名规则
架构ftp服务器
武威软件开发哪家强
怀旧服60级人最多的服务器
静安区智能软件开发
数据库lnf
三年级小学生网络安全小报
生物学和大数据库
平台型互联网科技公司
服务器报错50怎么解决
switchlite代理服务器
信息网络技术实务
大学软件开发需要学习课程
debian服务器怎么连
局域网服务器接收信号延时