Oracle資料庫無效物件問題處理

season0891發表於2010-08-26
在新上線的網管系統中,發現維護的資料庫存在大量的無效物件,其中大量的無效物件(800多個)所有者為系統使用者,雖然對應用暫時沒有影響,但為了避免隱患,對無效物件進行了處理。
$select object_name,object_type,owner,created,last_ddl_time,timestamp from dba_objects where status='INVALID' order by 1,2;
 
OBJECT_NAME                       OBJECT_TYPE  OWNER     
/c0c184e9_QsmaSqlValidationTar    JAVA CLASS   SYS       
/da5b87e_QsmaSqlTestCallback      JAVA CLASS   SYS       
/ec947e38_QsmaSqlParserJJCalls    JAVA CLASS   SYS       
_ALL_REPCOLUMN_GROUP              VIEW         SYS       
_ALL_REPCONFLICT                  VIEW         SYS       
_ALL_REPGROUPED_COLUMN            VIEW         SYS       
_ALL_REPPARAMETER_COLUMN          VIEW         SYS       
_ALL_REPRESOLUTION                VIEW         SYS       
DBA_LOCK_INTERNAL                 VIEW         SYS       
DBMS_REPCAT_AUTH                  PACKAGE BODY SYS       
DBMS_REPCAT_RGT_CUST              PACKAGE BODY SYS       
DBMS_REPCAT_UTL4                  PACKAGE BODY SYS       
DBMSOBJG_DP                       PACKAGE BODY SYS       
DBURITYPE                         TYPE         SYS       
DBURITYPE                         TYPE BODY    SYS       
FTPURITYPE                        TYPE         SYS       
FTPURITYPE                        TYPE BODY    SYS       
HTTPURITYPE                       TYPE         SYS       
HTTPURITYPE                       TYPE BODY    SYS       
LTRIC                             PACKAGE BODY SYS       
LTUTIL                            PACKAGE BODY SYS       
oracle/qsma/QsmaDataManager       JAVA CLASS   SYS       
oracle/qsma/QsmaDataReports       JAVA CLASS   SYS       
oracle/qsma/QsmaSql               JAVA CLASS   SYS       
oracle/qsma/QsmaSqlParser         JAVA CLASS   SYS       
oracle/qsma/QsmaSqlTest           JAVA CLASS   SYS       
oracle/qsma/QsmaWorkload          JAVA CLASS   SYS       
oracle/qsma/QsmaWorkloadFilter    JAVA CLASS   SYS       
OWM_DDL_PKG                       PACKAGE BODY SYS       
OWM_REPUTIL                       PACKAGE BODY SYS       
URIFACTORY                        PACKAGE BODY SYS       
URITYPE                           TYPE BODY    SYS       
USER_REPGROUPED_COLUMN            VIEW         SYS       
USER_REPPARAMETER_COLUMN          VIEW         SYS       
V1                                VIEW         SYS       
WM_DDL_UTIL                       PACKAGE BODY SYS       
XDBURITYPE                        TYPE         SYS       
XDBURITYPE                        TYPE BODY    SYS       
XMLCONCAT                         FUNCTION     SYS       
   無效物件產生可能有多種原因:
   產生SQL物件名無效的問題大多原因是由於資料遷移導致的,另外應用程式的變化等也會造成資料庫產生無效物件。
解決辦法:     
$ sqlplus /nolog
SQL*Plus: Release 10.2.0.1.0 - Production on Tue Mar 23 08:03:59 2010
Copyright (c) 1982, 2005, Oracle.  All rights reserved.
SQL> conn /as sysdba
Connected.
SQL> @/oracle/10g/rdbms/admin/utlrp.sql
 
重新編譯後,無效物件只有10多個,系統使用者沒有無效物件。
come from:http://blog.chinaunix.net/u/23363/showart_2200504.html

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/90618/viewspace-671949/,如需轉載,請註明出處,否則將追究法律責任。

相關文章