ITPub博客

首页 > 数据库 > Oracle > oracle 手动升级后组件状态为INVALID解决办法

oracle 手动升级后组件状态为INVALID解决办法

原创 Oracle 作者:bluesshadow 时间:2011-03-18 23:20:18 0 删除 编辑
After upgrade CATPROC and CATALOG comps are INVALID

报错信息:
oracle 10.2.0.1升级到10.2.0.5
运行catupgrd.sql后
racle Database 10.2 Upgrade Status Utility
racle Database 10.2 Upgrade Status Utility           03-16-2011 09:39:53
.
Component                                              Status         Version  HH:MM:SS
Oracle Database Server                          VALID      10.2.0.5.0  00:07:47
JServer JAVA Virtual Machine                 VALID      10.2.0.5.0  00:02:19
Oracle XDK                                                 VALID      10.2.0.5.0  00:00:40
Oracle Database Java Packages         INVALID      10.2.0.5.0  00:00:54
Oracle Text                                                  VALID      10.2.0.5.0  00:00:33
Oracle XML Database                               VALID      10.2.0.5.0  00:01:35
Oracle Real Application Clusters           VALID      10.2.0.5.0  00:00:02
Oracle Workspace Manager                    VALID      10.2.0.5.0  00:00:04
Oracle Data Mining                                    VALID      10.2.0.5.0  00:00:33
OLAP Analytic Workspace                        VALID      10.2.0.5.0  00:00:19
OLAP Catalog                                             VALID      10.2.0.5.0  00:00:56
Oracle OLAP API                                        VALID      10.2.0.5.0  00:01:45
Oracle interMedia                                      VALID      10.2.0.5.0  00:05:34
Oracle Expression Filter                           VALID      10.2.0.5.0  00:00:54
Spatial                                                          VALID      10.2.0.5.0  00:00:41
Oracle Rule Manager                                VALID      10.2.0.5.0  00:00:05
Oracle Enterprise Manager                      VALID      10.2.0.5.0  00:00:07
查了下metalink文档,有人碰到个这个,原来是FIXED_DATE这个参数设置不正确引起的,将FIXED_DATE设置为none,再次执行

升级脚本就可以了,oracle给出具体步骤为:
1.使用以下脚本验证那些无效对象对数据库组件状态有影响
spool /oracle/admin/obj_list.out
set serveroutput on
declare
          start_time date;
          end_time date;
          object_name varchar(100);
          object_id char(10);
          c_time date;
          s_time date;
          m_time date ;
CURSOR C1 IS SELECT obj#,name
FROM obj$
      WHERE status > 1 AND
       ( ctime BETWEEN start_time AND end_time OR
         mtime BETWEEN start_time AND end_time OR
         stime BETWEEN start_time AND end_time);
begin
SELECT date_loading, date_loaded into start_time, end_time FROM registry$ WHERE cid = 'CATPROC';

open c1;
fetch c1 into object_id, object_name ;
while c1%FOUND loop
dbms_output.put_line('Please compile Invalid object '||object_name||' Object_id '|| object_id);
fetch c1 into object_id,object_name;
end loop;
close c1;

EXCEPTION
WHEN NO_DATA_FOUND THEN dbms_output.put_line('CATPROC can be validated now' );
end;
/

spool off

2.修改fixed_date参数值为none
 SQL> ALTER SYSTEM SET FIXED_DATE=NONE SCOPE=BOTH;
3.关闭数据库,然后重新将数据库启动到升级模式
SQL>shutdown immediate
 
SQL>startup upgrade

4.重新运行升级脚本
SQL>@?/rdbms/admin/catupgrd.sql

运行完成后显示所有组件都升级到10.2.0.5,状态都为valid
5.重新启动数据,编译无效对象
SQL>shutdown immediate
SQL>@?/rdbms/admin/utlrp.sql
6.验证升级
SQL> SELECT comp_name, status, substr(version,1,10) as version from dba_registry order by modified;
Component                                                Status      Version 
Oracle Database Server                          VALID      10.2.0.5.0 
JServer JAVA Virtual Machine                 VALID      10.2.0.5.0 
Oracle XDK                                                 VALID      10.2.0.5.0 
Oracle Database Java Packages         VALID      10.2.0.5.0 
Oracle Text                                                  VALID      10.2.0.5.0 
Oracle XML Database                               VALID      10.2.0.5.0 
Oracle Real Application Clusters           VALID      10.2.0.5.0 
Oracle Workspace Manager                    VALID      10.2.0.5.0 
Oracle Data Mining                                    VALID      10.2.0.5.0 
OLAP Analytic Workspace                        VALID      10.2.0.5.0 
OLAP Catalog                                             VALID      10.2.0.5.0 
Oracle OLAP API                                        VALID      10.2.0.5.0 
Oracle interMedia                                      VALID      10.2.0.5.0 
Oracle Expression Filter                           VALID      10.2.0.5.0 
Spatial                                                          VALID      10.2.0.5.0 
Oracle Rule Manager                                VALID      10.2.0.5.0 
Oracle Enterprise Manager                      VALID      10.2.0.5.0 

OK。

metalink 原文:
After upgrade CATPROC and CATALOG comps are INVALID even if only user invalid objects are found [ID 745183.1]
           

In this Document
  Symptoms
  Cause
  Solution
  References

Applies to:
Oracle Server - Enterprise Edition - Version: 9.2.0.1 to 11.1.0.7 - Release: 9.2 to 11.1
Information in this document applies to any platform.
***Checked for relevance on 25-Jul-2010***
Symptoms
After upgrade from 9.2.0.8 to 10.2.0.4 there are invalid components under dba_registry:

Oracle Database 10.2 Upgrade Status Utility 09-17-2008 18:01:00

Component Status Version
Oracle Database Server INVALID 10.2.0.4.0
JServer JAVA Virtual Machine VALID 10.2.0.4.0
Oracle XDK VALID 10.2.0.4.0
Oracle Database Java Packages INVALID 10.2.0.4.0
Oracle XML Database VALID 10.2.0.4.0
Oracle Workspace Manager VALID 10.2.0.4.3

No critical errors have been found in the spool file for the run of the upgrade script.
No SYS/SYSTEM invalid objects have been found.

The select which indicates the invalid objects that caused the invalidation of the CATALOG or CATPROC return

only user invalid objects.

Cause

The parameter FIXED_DATE was set before the upgrade and the upgrade was done with this parameter set.
Because the FIXED_DATE parameter is used the SYSDATE will return only the date fixed by the parameter. During

the upgrade the registry$ table columns 'date_loading' and 'date_loaded' are updated using SYSDATE.
Also after the upgrade, the run of utlrp.sql modifies the 'mtime' column of obj$ and updates it using

SYSDATE.
This issue causes the invalidation of the CATPROC and CATALOG database components, since the user objects

will match the select statement criteria, used to collect the invalid objects, that influence the status of

the CATALOG and CATPROC components.
Solution

To implement the solution, please execute the following steps:

1. use the below script. to verify which invalid objects affect the status of the CATALOG and CATPROC database

components

spool /oracle/admin/obj_list.out
set serveroutput on
declare
          start_time date;
          end_time date;
          object_name varchar(100);
          object_id char(10);
          c_time date;
          s_time date;
          m_time date ;
CURSOR C1 IS SELECT obj#,name
FROM obj$
      WHERE status > 1 AND
       ( ctime BETWEEN start_time AND end_time OR
         mtime BETWEEN start_time AND end_time OR
         stime BETWEEN start_time AND end_time);
begin
SELECT date_loading, date_loaded into start_time, end_time FROM registry$ WHERE cid = 'CATPROC';

open c1;
fetch c1 into object_id, object_name ;
while c1%FOUND loop
dbms_output.put_line('Please compile Invalid object '||object_name||' Object_id '|| object_id);
fetch c1 into object_id,object_name;
end loop;
close c1;

EXCEPTION
WHEN NO_DATA_FOUND THEN dbms_output.put_line('CATPROC can be validated now' );
end;
/

spool off



2. verify and remove the parameter fixed_date from your init.ora file or database:
        SQL> ALTER SYSTEM SET FIXED_DATE=NONE SCOPE=BOTH;

3. bounce the database

4. rerun the upgrade script. (catupgrd.sql)

5. validate all the invalid objects using utlrp.sql script

6. verify the status of the dba_registry:
        SQL> set pagesize 999
        SQL> column status format a15
        SQL> column version format a15
        SQL> column comp_name format a35
        SQL> SELECT comp_name, status, substr(version,1,10) as version from dba_registry order by modified

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/24668589/viewspace-689950/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2010-09-27

  • 博文量
    34
  • 访问量
    142370