为什么我们需要分析oracle表

为什么我们需要分析oracle表,oracle,database-performance,database-optimization,Oracle,Database Performance,Database Optimization,我试图了解分析表如何有助于提高oracle的性能,当optimizer足够聪明,可以选择要处理的计划时,它会不会获得最新的统计数据来选择一个 另外,给出一个示例和命令/最佳分析方法对我理解这个概念非常有帮助对于每个表,DML(更新/删除/插入)是应用程序加载、卸载和执行数据修改的连续过程。现在,每次在访问这些表的数据库上运行任何查询时,优化器都会根据成本和响应制定执行计划,并使用统计信息生成最佳执行计划 因此,您的统计数据越精确和最新,生成的计划就越好,sql查询性能也就越好 我们可以使用Ana

我试图了解分析表如何有助于提高oracle的性能,当optimizer足够聪明,可以选择要处理的计划时,它会不会获得最新的统计数据来选择一个

另外,给出一个示例和命令/最佳分析方法对我理解这个概念非常有帮助

对于每个表,DML(更新/删除/插入)是应用程序加载、卸载和执行数据修改的连续过程。现在,每次在访问这些表的数据库上运行任何查询时,优化器都会根据成本和响应制定执行计划,并使用统计信息生成最佳执行计划

因此,您的统计数据越精确和最新,生成的计划就越好,sql查询性能也就越好

我们可以使用Analyze命令来获取这些。通常,数据库统计信息收集被安排为作业

谢谢, 卡里安

但问题太广泛了 我建议你看看Tom Kyte的“有效的甲骨文设计”第6章

这本书


类似的问题也在这里,在网站上:

分析
语句已被弃用,不应再使用。使用
dbms\u stats
instead了解stats本身在调优中是一个广泛的概念,但希望从专家那里了解它的基本功能。非常感谢你的建议,我会检查链接。那么你能帮我找到链接吗,我一直在努力得到同样的链接。
dbms_stats.gather_database_stats
dbms_stats.gather_schema_stats
dbms_stats.gather_table_stats
dbms_stats.gather_index_stats