Oracle数据库11g新特性:可管理性
2008-12-16 13:01:12 来源:WEB开发网这一难题已在 Oracle 数据库 11g 中得到解决。您可以将表索引的统计信息定义为处于正在审核状态,这意味着新收集的统计信息不会被发布或为优化程序所使用 — 这样您就有机会在发布之前对新的统计信息进行测试。要实现这一目的,您需要通过提供的程序包 dbms_stats 中的 set_table_prefs 过程将表统计信息的 publish 属性设置为 FALSE.
下面的例子说明了如何使 ARUP 模式中 SALGRADE 表的统计信息处于未发布状态:
begin
dbms_stats.set_table_prefs (
ownname => 'ARUP',
tabname => 'SALGRADE',
pname => 'PUBLISH',
pvalue => 'FALSE'
);
end;
一旦您将发布首选项设置为 false,收集的统计信息就将被标记为正在审核。下面是现在该表的统计信息:
SQL> select num_rows, to_char(last_analyzed,'mm/dd/yy hh24:mi:ss')
2 from user_tables
3 where table_name = 'SALGRADE';
NUM_ROWS TO_CHAR(LAST_ANAL
---------- -----------------
6 09/10/07 22:04:37
今天是 2007 年 9 月 21 日,因此统计信息是刚刚收集的。我们再次收集统计信息:
begin
dbms_stats.gather_table_stats (
ownname => 'ARUP',
tabname => 'SALGRADE',
estimate_percent=> 100
);
end;
/
如果您再次查看统计信息:
NUM_ROWS TO_CHAR(LAST_ANAL
---------- -----------------
6 09/10/07 22:04:37
- ››oracle 中 UPDATE nowait 的使用方法
- ››Oracle ORA-12560解决方法
- ››Oracle 10g RAC 常用维护命令
- ››Oracle如何在ASM中定位文件的分布
- ››Oracle的DBMS_RANDOM.STRING 的用法
- ››oracle 外部表导入时间日期类型数据,多字段导入
- ››Oracle中查找重复记录
- ››oracle修改用户登录密码
- ››Oracle创建删除用户、角色、表空间、导入导出等命...
- ››Oracle中登陆时报ORA-28000: the account is lock...
- ››Oracle数据库在配置文件中更改最大连接数
- ››Oracle中在pl/sql developer修改表的两种方式
更多精彩
赞助商链接