EXEC DBMS_STATS.GET_TABLE_STATS('OWNER','TABLENAME',DEGREE=>5) |
degree就是并行度 |
DBMS_STATS.GATHER_INDEX_STATS |
DBMS_STATS.GATHER_TABLE_STATS |
DBMS_STATS.GATHER_SCHEMA_STATS |
DBMS_STATS.GATHER_DATABASE_STATS EXEC DBMS_STATS.GET_TABLE_STATS('OWNER','TABLENAME',DEGREE=>5) degree就是并行度 在我的ORACLE10G上执行execute dbms_stats.gather_table_stats('scott','emp'); BEGIN dbms_stats.gather_table_stats('scott','emp'); END; 出现这样的错误. * ERROR at line 1: ORA-20000: index "SCOTT"."PK_EMP" or partition of such index is in unusable state ORA-06512: at "SYS.DBMS_STATS", line 13056 ORA-06512: at "SYS.DBMS_STATS", line 13076 ORA-06512: at line 1 应该是EMP的索引出现问题 ALTER INDEX "SCOTT"."PK_EMP" REBUILD 提示说是我的临时表空间不够,所以增加临时表空间.命令执行成功. ALTER DATABASE TEMPFILE '/home/oracle/backup/disk8/moon/jinlian_temp.dbf' RESIZE 55M 然后执行 BEGIN DBMS_STATS.GATHER_INDEX_STATS('"SCOTT"', '"PK_EMP"', estimate_percent=>NULL); END; 把索引重建后,再执行: scott@ORAL> execute dbms_stats.gather_table_stats('scott','emp'); PL/SQL procedure successfully completed. 成功. |
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/330796/viewspace-867869/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/330796/viewspace-867869/