[20230808]建立修改索引统计信息modind.sql脚本.txt --//以前建立过修改表统计信息以及字段统计信息的脚本,参考链接: --//[20221219]建立修改表字段统计信息modcol.sql脚本.txt => http://blog.itpub.net/267265/viewspace-2932710/ --//[20221219]建立修改表统计信息modtab.sql脚本.txt => http://blog.itpub.net/267265/viewspace-2932708/ SCOTT@test01p> @ desc_proc sys dbms_stats set_index_stats INPUT OWNER PACKAGE_NAME OBJECT_NAME sample : @desc_proc sys dbms_stats gather_%_stats OWNER PACKAGE_NAME OBJECT_NAME SEQUENCE ARGUMENT_NAME DATA_TYPE IN_OUT DEFAULTED ----- ------------ --------------- -------- --------------- --------------- ------ --------- SYS DBMS_STATS SET_INDEX_STATS 1 OWNNAME VARCHAR2 IN N 2 INDNAME VARCHAR2 IN N 3 PARTNAME VARCHAR2 IN Y 4 STATTAB VARCHAR2 IN Y 5 STATID VARCHAR2 IN Y 6 NUMROWS NUMBER IN Y 7 NUMLBLKS NUMBER IN Y 8 NUMDIST NUMBER IN Y 9 AVGLBLK NUMBER IN Y 10 AVGDBLK NUMBER IN Y 11 CLSTFCT NUMBER IN Y 12 INDLEVEL NUMBER IN Y 13 FLAGS NUMBER IN Y 14 STATOWN VARCHAR2 IN Y 15 NO_INVALIDATE PL/SQL BOOLEAN IN Y 16 GUESSQ NUMBER IN Y 17 CACHEDBLK NUMBER IN Y 18 CACHEHIT NUMBER IN Y 19 FORCE PL/SQL BOOLEAN IN Y 1 OWNNAME VARCHAR2 IN N 2 INDNAME VARCHAR2 IN N 3 PARTNAME VARCHAR2 IN Y 4 STATTAB VARCHAR2 IN Y 5 STATID VARCHAR2 IN Y 6 EXT_STATS RAW IN N 7 STATTYPOWN VARCHAR2 IN Y 8 STATTYPNAME VARCHAR2 IN Y 9 STATOWN VARCHAR2 IN Y 10 NO_INVALIDATE PL/SQL BOOLEAN IN Y 11 FORCE PL/SQL BOOLEAN IN Y 30 rows selected. --//忘记建立1个修改索引统计信息的脚本,建立如下: $ cat modind.sql set verify off set termout off column v_owner new_value v_owner column v_index new_value v_index select upper(CASE WHEN INSTR('&1','.') > 0 THEN SUBSTR('&1',INSTR('&1','.')+1) ELSE '&1' END ) v_index, nvl(upper(CASE WHEN INSTR('&1','.') > 0 THEN UPPER(SUBSTR('&1',1,INSTR('&1','.')-1)) ELSE user END),user) v_owner from dual; set termout on prompt prompt input argument list : owner.index_name index_stat_attribute value prompt prompt index_stat_attribute = numrows numlblks numdist avglblk avgdblk clstfct indlevel prompt prompt @desc_proc sys dbms_stats set_index_stats prompt prompt exec dbms_stats.set_index_stats('&v_owner','&v_index',&2=>&3,NO_INVALIDATE=>false,force=>true);; prompt pause press enter to continue ... exec dbms_stats.set_index_stats('&v_owner','&v_index',&2=>&3,NO_INVALIDATE=>false,force=>true); prompt 1.测试环境: SCOTT@test01p> @ ver1 PORT_STRING VERSION BANNER CON_ID ------------------------------ -------------- -------------------------------------------------------------------------------- ---------- IBMPC/WIN_NT64-9.1.0 12.2.0.1.0 Oracle Database 12c Enterprise Edition Release 12.2.0.1.0 - 64bit Production 0 2.测试: SCOTT@test01p> create table empx as select * from emp; Table created. SCOTT@test01p> @ pk empx empno create unique index pk_empx on t1 (empno); alter table empx add constraint pk_empx primary key (empno); -- alter table empx modify constraint pk_empx disable; -- alter table empx drop constraint PK_empx; -- drop index pk_empx; Index created. Table altered. SCOTT@test01p> @ ind pk_empx Display indexes where table or index name matches %pk_empx%... TABLE_OWNER TABLE_NAME INDEX_NAME POS# COLUMN_NAME DSC ----------- ---------- ---------- ---- ----------- ---- SCOTT EMPX PK_EMPX 1 EMPNO INDEX_OWNER TABLE_NAME INDEX_NAME IDXTYPE UNIQ STATUS PART TEMP H LFBLKS NDK NUM_ROWS CLUF LAST_ANALYZED DEGREE VISIBILIT ----------- ---------- ---------- ---------- ---- ------ ---- ---- -- ------ --- ---------- ----- ------------------- ------ --------- SCOTT EMPX PK_EMPX NORMAL YES VALID NO N 1 1 14 14 1 2023-08-18 21:09:29 1 VISIBLE SCOTT@test01p> @ modind pk_empx indlevel 1 input argument list : owner.index_name index_stat_attribute value index_stat_attribute = numrows numlblks numdist avglblk avgdblk clstfct indlevel @desc_proc sys dbms_stats set_index_stats exec dbms_stats.set_index_stats('SCOTT','PK_EMPX',indlevel=>2,NO_INVALIDATE=>false,force=>true); press enter to continue ... PL/SQL procedure successfully completed. SCOTT@test01p> @ ind pk_empx Display indexes where table or index name matches %pk_empx%... TABLE_OWNER TABLE_NAME INDEX_NAME POS# COLUMN_NAME DSC ----------- ---------- ---------- ---- ----------- ---- SCOTT EMPX PK_EMPX 1 EMPNO INDEX_OWNER TABLE_NAME INDEX_NAME IDXTYPE UNIQ STATUS PART TEMP H LFBLKS NDK NUM_ROWS CLUF LAST_ANALYZED DEGREE VISIBILIT ----------- ---------- ---------- ---------- ---- ------ ---- ---- -- ------ --- ---------- ---- ------------------- ------ --------- SCOTT EMPX PK_EMPX NORMAL YES VALID NO N 2 1 14 14 1 2023-08-18 21:12:32 1 VISIBLE --//High=2. 索引高度比indlevel大1。 SCOTT@test01p> @ modind pk_empx numrows 100 input argument list : owner.index_name index_stat_attribute value index_stat_attribute = numrows numlblks numdist avglblk avgdblk clstfct indlevel @desc_proc sys dbms_stats set_index_stats exec dbms_stats.set_index_stats('SCOTT','PK_EMPX',numrows=>100,NO_INVALIDATE=>false,force=>true); press enter to continue ... PL/SQL procedure successfully completed. SCOTT@test01p> @ ind pk_empx Display indexes where table or index name matches %pk_empx%... TABLE_OWNER TABLE_NAME INDEX_NAME POS# COLUMN_NAME DSC ----------- ---------- ---------- ---- ----------- ---- SCOTT EMPX PK_EMPX 1 EMPNO INDEX_OWNER TABLE_NAME INDEX_NAME IDXTYPE UNIQ STATUS PART TEMP H LFBLKS NDK NUM_ROWS CLUF LAST_ANALYZED DEGREE VISIBILIT ----------- ---------- ---------- ---------- ---- ------ ---- ---- -- ------ --- ---------- ---------- ------------------- ------ --------- SCOTT EMPX PK_EMPX NORMAL YES VALID NO N 2 1 14 100 1 2023-08-18 21:18:07 1 VISIBLE --//NUM_ROWS=100. --//当然我估计修改索引统计信息的机会很少,我估计最大的可能用来修改调整群集因子clstfct。
[20230808]建立修改索引统计信息modind.sql脚本.txt
来源:这里教程网
时间:2026-03-03 18:58:27
作者:
编辑推荐:
下一篇:
相关推荐
-
雷神推出 MIX PRO II 迷你主机:基于 Ultra 200H,玻璃上盖 + ARGB 灯效
2 月 9 日消息,雷神 (THUNDEROBOT) 现已宣布推出基于英
-
制造商 Musnap 推出彩色墨水屏电纸书 Ocean C:支持手写笔、第三方安卓应用
2 月 10 日消息,制造商 Musnap 现已在海外推出一款 Oce
热文推荐
- 直播、AI赋能,美团披着荆棘前行
直播、AI赋能,美团披着荆棘前行
26-03-03 - Oracle 11.2.0.4 创建普通表,区及段默认是否会分配
Oracle 11.2.0.4 创建普通表,区及段默认是否会分配
26-03-03 - 数据库 SQL执行时长
数据库 SQL执行时长
26-03-03 - 数据库内存交换异常 故障报告
数据库内存交换异常 故障报告
26-03-03 - 大模型加持,讯飞智能办公本X3助办公效率再提速
大模型加持,讯飞智能办公本X3助办公效率再提速
26-03-03 - 从线上化走向智能化,数字办公助力企业实现"效率+安全”双提升|爱分析报告
从线上化走向智能化,数字办公助力企业实现"效率+安全”双提升|爱分析报告
26-03-03 - enq:TX – row lock contention产生原因及处理脚本
- Oracle 11G 区管理方式
Oracle 11G 区管理方式
26-03-03 - VMware Workstation RAC共享磁盘与心跳配置
VMware Workstation RAC共享磁盘与心跳配置
26-03-03 - 在大有可为的即时零售赛道上,达达集团迈上了盈利台阶
在大有可为的即时零售赛道上,达达集团迈上了盈利台阶
26-03-03
