- begin
- DBMS_SCHEDULER.DISABLE('GATHER_STATS_JOB');
- end;
- BEGIN
- DBMS_AUTO_TASK_ADMIN.DISABLE(
- client_name => 'auto optimizer stats collection',
- operation => NULL,
- window_name => NULL);
- END;
- SQL> select client_name ,status from dba_autotask_client;
- CLIENT_NAME STATUS
- ---------------------------------------------------------------- --------
- auto optimizer stats collection DISABLED
- auto space advisor ENABLED
- sql tuning advisor ENABLED
- BEGIN
- dbms_stats.gather_schema_stats(
- ownname=>'HR',
- METHOD_OPT=>'FOR ALL INDEXED COLUMNS SIZE SKEWONLY',
- CASCADE=>TRUE,
- ESTIMATE_PERCENT=>10,
- DEGREE=>8);
- END;
- select table_name,
- last_analyzed,
- num_rows,
- avg_row_len,
- row_movement,
- monitoring
- from dba_tables
- where owner = 'HR';
- select index_name,
- table_name,
- blevel,
- status,
- clustering_factor,
- last_analyzed,
- num_rows,
- leaf_blocks,
- distinct_keys,
- avg_leaf_blocks_per_key
- from dba_indexes
- where owner = 'HR';
- begin
- dbms_stats.create_stat_table(ownname => 'HR',
- stattab => 'HR_STAT_BAK');
- end;
- begin
- dbms_stats.export_schema_stats(ownname => 'HR',
- stattab => 'HR_STAT_BAK',
- statid => 'N1',
- statown => 'HR');
- end;
- select * from HR_STAT_BAK;
- begin
- dbms_stats.delete_schema_stats(ownname => 'HR');
- end;
- begin
- dbms_stats.import_schema_stats(ownname => 'HR',
- stattab => 'HR_STAT_BAK',
- statid => 'N1',
- statown => 'HR');
- end;
- SQL> exec dbms_stats.upgrade_stat_table('HR','HR_STAT_BAK');
- PL/SQL 过程已成功完成。
- SQL> EXEC dbms_stats.import_schema_stats(ownname => 'HR',stattab => 'HR_STAT_BAK',statid => 'N1',statown=>'HR');
- PL/SQL 过程已成功完成。
- 1:锁定统计信息
- begin
- dbms_stats.lock_schema_stats(ownname=>'HR');
- end;
- 2:查询哪些表或索引的统计信息被锁定
- select * from user_tab_statistics where stattype_locked='ALL';
- select * from user_ind_statistics where stattype_locked='ALL';
- 3:如果在锁定条件下收集统计信息,则会出现如下报错
- ERROR at line 1:
- ORA-20005: object statistics are locked (stattype = ALL)
- ORA-06512: at "SYS.DBMS_STATS", line 20337
- ORA-06512: at "SYS.DBMS_STATS", line 20360
- ORA-06512: at line 1
- 4:解锁统计信息
- begin
- dbms_stats.lock_schema_stats(ownname=>'HR');
- end;
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/23347737/viewspace-1766831/ ,如需转载,请注明出处,否则将追究法律责任。