dbms_stats 使用方式

[复制链接]
查看11 | 回复2 | 2014-4-5 19:53:18 | 显示全部楼层 |阅读模式
1.创建存放统计信息的表:
exec DBMS_STATS.CREATE_STAT_TABLE (ownname=>'GYJ', stattab=>'STAT_TAB',tblspace=>'STAT_TP1');

2.导出备份统计信息:
exec dbms_stats.export_table_stats(ownname=>'GYJ',tabname=>'LOG_PREPAY_INFO',stattab=>'STAT_TAB');

3.比如分析过后,发现有问题:
analyze table LOG_PREPAY_INFO compute statistics
for table
for all indexes
for all indexed columns;

4.马上删除:
analyze table LOG_PREPAY_INFO delete statistics;

5.马上导入刚才备份的信息:
exec dbms_stats.import_table_stats(ownname=>'GYJ',tabname=>'LOG_PREPAY_INFO',stattab=>'STAT_TAB');

6.其中列上面的柱状图信息,需要这样删除:
DBMS_STATS.DELETE_COLUMN_STATS (
ownname VARCHAR2,
tabname VARCHAR2,
colname VARCHAR2,
partnameVARCHAR2 DEFAULT NULL,
stattab VARCHAR2 DEFAULT NULL,
statidVARCHAR2 DEFAULT NULL,
cascade_parts BOOLEANDEFAULT TRUE,
statown VARCHAR2 DEFAULT NULL,
no_invalidate BOOLEAN DEFAULT FALSE);

比如:
exec DBMS_STATS.DELETE_COLUMN_STATS(ownname=>'HR',tabname=>'EMPLOYEES',colname=>'STATUS');

回复

使用道具 举报

千问 | 2014-4-5 19:53:18 | 显示全部楼层
謝謝分享資訊~感謝^^
回复

使用道具 举报

千问 | 2014-4-5 19:53:18 | 显示全部楼层
scofieldliu 发表于 2013-7-24 17:42
謝謝分享資訊~感謝^^

有待大家的补充,共同学习,一起进步!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行