行业客户 12c 何时自动收集统计信息?
发表于:2026-10-31 作者:千家信息网编辑
千家信息网最后更新 2026年10月31日,每个行业都有自己的特点,比如金融行业,每天晚上10点左右会跑批,而自动收集统计信息默认周一到周五晚上10点,持续4个小时收集统计信息,周六周日每天6点,持续20个小时收集统计信息。显然我们应该设计一个
千家信息网最后更新 2026年10月31日行业客户 12c 何时自动收集统计信息?
每个行业都有自己的特点,比如金融行业,每天晚上10点左右会跑批,而自动收集统计信息默认周一到周五晚上10点,持续4个小时收集统计信息,周六周日每天6点,持续20个小时收集统计信息。显然我们应该设计一个更加合适的时间点来收集统计信息。
这里演示每天凌晨1点,持续5个小时收集统计信息的方法。
1.查看版本SQL> select * from v$version;BANNER CON_ID-------------------------------------------------------------------------------- ----------Oracle Database 12c Enterprise Edition Release 12.1.0.2.0 - 64bit Production 0PL/SQL Release 12.1.0.2.0 - Production 0CORE 12.1.0.2.0 Production 0TNS for Linux: Version 12.1.0.2.0 - Production 0NLSRTL Version 12.1.0.2.0 - Production 0SQL> --默认值如下set lines 200col WINDOW_NAME for a20col REPEAT_INTERVAL for a60 col DURATION for a20SELECT w.window_name, w.repeat_interval, w.duration, w.enabled FROM dba_autotask_window_clients c, dba_scheduler_windows w WHERE c.window_name = w.window_name AND c.optimizer_stats = 'ENABLED';SQL> set lines 200SQL> col WINDOW_NAME for a20SQL> col REPEAT_INTERVAL for a60 SQL> col DURATION for a20SQL> SELECT w.window_name, 2 w.repeat_interval, 3 w.duration, 4 w.enabled 5 FROM dba_autotask_window_clients c, dba_scheduler_windows w 6 WHERE c.window_name = w.window_name AND c.optimizer_stats = 'ENABLED';WINDOW_NAME REPEAT_INTERVAL DURATION ENABL-------------------- ------------------------------------------------------------ -------------------- -----TUESDAY_WINDOW freq=daily;byday=TUE;byhour=22;byminute=0; bysecond=0 +000 04:00:00 TRUEWEDNESDAY_WINDOW freq=daily;byday=WED;byhour=22;byminute=0; bysecond=0 +000 04:00:00 TRUETHURSDAY_WINDOW freq=daily;byday=THU;byhour=22;byminute=0; bysecond=0 +000 04:00:00 TRUEFRIDAY_WINDOW FREQ=daily;BYDAY=FRI;BYHOUR=22;BYMINUTE=30;BYSECOND=0 +000 04:00:00 TRUESATURDAY_WINDOW freq=daily;byday=SAT;byhour=6;byminute=0; bysecond=0 +000 20:00:00 TRUESUNDAY_WINDOW freq=daily;byday=SUN;byhour=6;byminute=0; bysecond=0 +000 20:00:00 TRUE6 rows selected.--修改自动收集统计信息每天凌晨一点,持续5个小时。 --MONDAY BEGIN DBMS_SCHEDULER.SET_ATTRIBUTE ( name => '"SYS"."MONDAY_WINDOW"', attribute => 'REPEAT_INTERVAL', VALUE => 'FREQ=daily;BYDAY=MON;BYHOUR=1;BYMINUTE=0;BYSECOND=0'); END; / BEGIN DBMS_SCHEDULER.SET_ATTRIBUTE( name => '"SYS"."MONDAY_WINDOW"', attribute => 'DURATION', value => numtodsinterval(300,'minute')); END; / --TUESDAY BEGIN DBMS_SCHEDULER.SET_ATTRIBUTE ( name => '"SYS"."TUESDAY_WINDOW"', attribute => 'REPEAT_INTERVAL', VALUE => 'FREQ=daily;BYDAY=TUE;BYHOUR=1;BYMINUTE=0;BYSECOND=0'); END; / BEGIN DBMS_SCHEDULER.SET_ATTRIBUTE( name => '"SYS"."TUESDAY_WINDOW"', attribute => 'DURATION', value => numtodsinterval(300,'minute')); END; / --WEDNESDAY BEGIN DBMS_SCHEDULER.SET_ATTRIBUTE ( name => '"SYS"."WEDNESDAY_WINDOW"', attribute => 'REPEAT_INTERVAL', VALUE => 'FREQ=daily;BYDAY=WED;BYHOUR=1;BYMINUTE=0;BYSECOND=0'); END; / BEGIN DBMS_SCHEDULER.SET_ATTRIBUTE( name => '"SYS"."WEDNESDAY_WINDOW"', attribute => 'DURATION', value => numtodsinterval(300,'minute')); END; / --THURSDAY BEGIN DBMS_SCHEDULER.SET_ATTRIBUTE ( name => '"SYS"."THURSDAY_WINDOW"', attribute => 'REPEAT_INTERVAL', VALUE => 'FREQ=daily;BYDAY=THU;BYHOUR=1;BYMINUTE=0;BYSECOND=0'); END; / BEGIN DBMS_SCHEDULER.SET_ATTRIBUTE( name => '"SYS"."THURSDAY_WINDOW"', attribute => 'DURATION', value => numtodsinterval(300,'minute')); END; / --FRIDAY BEGIN DBMS_SCHEDULER.SET_ATTRIBUTE ( name => '"SYS"."FRIDAY_WINDOW"', attribute => 'REPEAT_INTERVAL', VALUE => 'FREQ=daily;BYDAY=FRI;BYHOUR=1;BYMINUTE=0;BYSECOND=0'); END; / BEGIN DBMS_SCHEDULER.SET_ATTRIBUTE( name => '"SYS"."FRIDAY_WINDOW"', attribute => 'DURATION', value => numtodsinterval(300,'minute')); END; / --SATURDAY BEGIN DBMS_SCHEDULER.SET_ATTRIBUTE ( name => '"SYS"."SATURDAY_WINDOW"', attribute => 'REPEAT_INTERVAL', VALUE => 'FREQ=daily;BYDAY=SAT;BYHOUR=1;BYMINUTE=0;BYSECOND=0'); END; / BEGIN DBMS_SCHEDULER.SET_ATTRIBUTE( name => '"SYS"."SATURDAY_WINDOW"', attribute => 'DURATION', value => numtodsinterval(300,'minute')); END; / --SUNDAY BEGIN DBMS_SCHEDULER.SET_ATTRIBUTE ( name => '"SYS"."SUNDAY_WINDOW"', attribute => 'REPEAT_INTERVAL', VALUE => 'FREQ=daily;BYDAY=SUN;BYHOUR=1;BYMINUTE=0;BYSECOND=0'); END; / BEGIN DBMS_SCHEDULER.SET_ATTRIBUTE( name => '"SYS"."SUNDAY_WINDOW"', attribute => 'DURATION', value => numtodsinterval(300,'minute')); END; /SQL> --验证是否变更SQL> set lines 200SQL> col WINDOW_NAME for a20SQL> col REPEAT_INTERVAL for a60 SQL> col DURATION for a20SQL> SELECT w.window_name, 2 w.repeat_interval, 3 w.duration, 4 w.enabled 5 FROM dba_autotask_window_clients c, dba_scheduler_windows w 6 WHERE c.window_name = w.window_name AND c.optimizer_stats = 'ENABLED';WINDOW_NAME REPEAT_INTERVAL DURATION ENABL-------------------- ------------------------------------------------------------ -------------------- -----MONDAY_WINDOW FREQ=daily;BYDAY=MON;BYHOUR=1;BYMINUTE=0;BYSECOND=0 +000 05:00:00 TRUETUESDAY_WINDOW FREQ=daily;BYDAY=TUE;BYHOUR=1;BYMINUTE=0;BYSECOND=0 +000 05:00:00 TRUEWEDNESDAY_WINDOW FREQ=daily;BYDAY=WED;BYHOUR=1;BYMINUTE=0;BYSECOND=0 +000 05:00:00 TRUETHURSDAY_WINDOW FREQ=daily;BYDAY=THU;BYHOUR=1;BYMINUTE=0;BYSECOND=0 +000 05:00:00 TRUEFRIDAY_WINDOW FREQ=daily;BYDAY=FRI;BYHOUR=1;BYMINUTE=0;BYSECOND=0 +000 05:00:00 TRUESATURDAY_WINDOW FREQ=daily;BYDAY=SAT;BYHOUR=1;BYMINUTE=0;BYSECOND=0 +000 05:00:00 TRUESUNDAY_WINDOW FREQ=daily;BYDAY=SUN;BYHOUR=1;BYMINUTE=0;BYSECOND=0 +000 05:00:00 TRUE7 rows selected.SQL> 看到太多的客户都是默认值,当然对非7*24小时的系统也没有太大影响。但是,某些7X24小时的业务系统,我们需要做更多的优化调整,然后持续跟踪,不断优化。保证业务的连续性。不管大家有没有设置,都需要大家知道这里可能会引起性能问题的一个点,我们必须考虑到。
信息
统计
小时
行业
业务
系统
客户
合适
不断
性能
方法
时间
更多
版本
特点
连续性
金融
问题
保证
影响
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
南京欣网互联网络科技
互联网科技工作委员会副主任毛军
中关村互联网科技集团
科技赋能下的互联网金融
深圳恒合互联网络科技有限公司
互联网属科技
互联网科技卖菜
深圳互联网科技公司
科技服务与互联网
沃里互联网科技
山东吉时兔互联网科技有限公司
开启互联网科技时代小说
安控科技rtu产品工业互联网
成都铂石互联网科技做什么的
宜昌元轩互联网科技有限公司
深圳无忧互联网科技
富国互联网科技002692
互联网科技手抄报图片
互联网的黑科技实验室
互联网大会出现的黑科技
广州为想互联网科技有限公司
亿人帮互联网科技有限公司
互联网与科技发展
深圳国际航运科技和互联网
福州新华互联网科技学校 知乎
银川新华互联网科技职业技术培训学校图片
港股科技和互联网
企晟互联网信息科技有限公司
互联网在线教育科技创业
互联网科技如何创业