Oracle 表直方图采样比例设置 dbms_stats.set_global_prefs

来源:这里教程网 时间:2026-03-03 19:58:22 作者:

问题:您能解释一下dbms_stats。Set_global_prefs过程做什么?我想看看dbms_stats.set_global_prefs的一个例子。 dbms_stats.set_global_prefs命令更改SQL优化器统计信息自动重新分析的全局默认项。 从Oracle 11g开始,set_global_prefs过程用于覆盖默认的全局默认项,包括自动统计收集作业的一些特定默认项。     exec dbms_stats。set_global_prefs(“AUTOSTATS_TARGET”、“AUTO”); 这里我们将默认估计百分比设置为10%样本大小:     dbms_stats.set_global_prefs(‘ESTIMATE_PERCENT’,‘10’); 这里我们将并行度设置为25,对于36个CPU的服务器(cpu_count=36):     dbms_stats.set_global_prefs(“ DEGREE”,“35”); 调整全局默认项并不是一个好主意,除非我们非常了解其后果,下面的命令将把统计数据重新设置回默认值。     exec dbms_stats.reset_global_pref_defaults; 总之,dbms_stats.set_global_prefs只有在仔细测试了结果SQL工作负载之后才能修改。 现在,从Oracle 11g release 2开始,我们将这个并行并行功能内置到dbms_stats中。Oracle现在有一个全局dbms_stats配置参数concurrent=true,它允许并发优化器收集统计信息。     exec dbms_stats.set_global_prefs(“ concurrent”,“ true”); 如果您总是希望在运行gather_table_stats时分析索引,您可以使用set_database_prefs、set_global_prefs或set_table_prefs,以便在执行gather_table_stats时始终包含索引。参考链接:‘http://www.dba-oracle.com/t_dbms_stats_set_global_prefs.htm#:~:text=Answer%3A%20The%20dbms_stats.set_global_prefs%20command%20changes%20the%20global%20preferences,specific%20preferences%20for%20the%20automatic%20stats%20collection%20job.’ 'https://docs.oracle.com/database/121/ARPLS/d_stats.htm'

相关推荐

热文推荐