Chinaunix首页 | 论坛 | 博客
  • 博客访问: 16760
  • 博文数量: 1
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 20
  • 用 户 组: 普通用户
  • 注册时间: 2015-05-06 11:40
文章分类
文章存档

2016年(1)

我的朋友

分类: Oracle

2016-04-18 23:49:41

-- oracle 8.1.5 之前 
analyze 收集统计信息
analyze table tt1 estimate statistics  sample 15 percent for   table  -估算模式收集表统计信息
analyze table tt1 compute statistics  for table --- 计算模式收集表统计信息
analyze table tt1 comupte statistics for column object_id  --对指定列收集统计信息
analyze table tt1 comupte statistics for table for column object_id ----对指定列和表收集统计信息
analyze index idx_tt1 compute statistics --对制定索引收集统计信息
analyze table tt1 delete statistics  -- 对制定表删除所有统计信息
analyze table tt1 compute statistics  --对指定表收集所有统计信息

---dbms_stats包收集统计信息
exec  dbms_stats.gather_table_stats(ownname => 'test',tabname => 'tt1',estimate_percent => 15,method_opt => 'for  table',cascade => false); ---估算模式对制定表上收集统计信息    

exec  dbms_stats.gather_table_stats(ownname => 'test',tabname => 'tt1',estimate_percent => 100,method_opt => 'for  table',cascade => false); ---计算方式对制定表上收集统计信息                          

 exec  dbms_stats.gather_table_stats(ownname => 'test',tabname => 'tt1',estimate_percent => 100,method_opt => 'for columns size 1 object_name object_id',cascade => false); ---计算方式对制定表列上收集统计信息

exec   dbms_stats.gather_index_stats(ownname => 'test',indname => 'idx_tt1',estimate_percent => 100);
---制定模式下索引收集统计

 exec  dbms_stats.delete_table_stats(ownname => 'test',tabname => 'tt1'); --删除表统计信息
---一次性收集表统计信息
exec   dbms_stats.gather_table_stats(ownname => 'test',tabname => 'tt1',estimate_percent =>  100,cascade => true);


anaylze 和dbms_stats 区别
1. analyze 不能正确的地收集分区表的统计信息,而dbms_stats 包却可以
2 . analyze 命令不能并行收集统计信息,而dbms_stats 包却可以
exec     dbms_stats.gather_table_stats(ownname => 'test',tabname => 'tt1',estimate_percent =>  100,cascade => true,degree => 3);





            





阅读(3707) | 评论(0) | 转发(0) |
0

上一篇:没有了

下一篇:没有了

给主人留下些什么吧!~~