oracle基于脚本的安装失败,脚本建库导致 Oracle 组件未安装故障案例

这篇记录也是以前在做数据库巡检时,客户数据库的一个故障,觉得不错,记录分享到博客里。

问题描述

今天数据库应用人员在编译存过时,报以下错误 PACKAGE BODY TXCZ10.BILLELEMENT_TYPE 编译错误错误:

1PLS-00201: 必须说明标识符 'XMLDOM.DOMDOCUMENT'行:5

应用影响

系统关键应用不可用。

背景

由于客户数据库有坏块,后来不得已帮客户重新创建了一个数据库,至于原库坏块的详细信息,详见我的上篇博文 记一次 ORA-600 [12700] 故障案例,由于使用 dbca 图形化界面创建数据库时遇到问题,网上找了半天也没有可行方法,后来通过脚本建库的。手工建库的脚本以下仅列出建库的SQL,和导入的SQL,其它信息省略

建库脚本1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25CREATE DATABASE myschema

CONTROLFILE REUSE

USER SYS IDENTIFIED BY myschema155

USER SYSTEM IDENTIFIED BY myschema155

LOGFILE GROUP 1 ('/dev/vg01/rlvredolog11', '/dev/vg01/rlvredolog12') SIZE 512M,

GROUP 2 ('/dev/vg01/rlvredolog21', '/dev/vg01/rlvredolog22') SIZE 512M,

GROUP 3 ('/dev/vg01/rlvredolog31', '/dev/vg01/rlvredolog32') SIZE 512M,

GROUP 4 ('/dev/vg01/rlvredolog41', '/dev/vg01/rlvredolog42') SIZE 512M,

GROUP 5 ('/dev/vg01/rlvredolog51', '/dev/vg01/rlvredolog52') SIZE 512M,

GROUP 6 ('/dev/vg01/rlvredolog61', '/dev/vg01/rlvredolog62') SIZE 512M

MAXLOGFILES 6

MAXLOGMEMBERS 5

MAXLOGHISTORY 1

MAXDATAFILES 1000

MAXINSTANCES 1

CHARACTER SET UTF8

NATIONAL CHARACTER SET UTF8

DATAFILE '/dev/vg01/rmyschema_system_01.dbf' SIZE 3130M AUTOEXTEND OFF

SYSAUX DATAFILE '/dev/vg01/rmyschema_sysaux_01.dbf' SIZE 3130M AUTOEXTEND OFF

DEFAULT TEMPORARY TABLESPACE temp

TEMPFILE '/dev/vg01/rmyschema_temp_01.dbf'

SIZE 5140M AUTOEXTEND OFF

UNDO TABLESPACE UNDOTBS1

DATAFILE '/dev/vg01/rmyschema_undo_01.dbf'

SIZE 10240M AUTOEXTEND OFF;

导入数据字典

1

2

3@?/rdbms/admin/catalog.sql;

@?/rdbms/admin/catproc.sql;

@?/rdbms/admin/pupbld.sql;

根据 ORA 报错信息,猜测可能是组件不正常。

查询新库和老库组件

4.1 新库(myschema)组件

Oracle9i CataLog Views 9.2.0.8.0

Oracle9i Package and Type 9.2.0.8.0

4.2 原库(myschema)组件(老库还在的,新库建好后,暂时没删掉。)

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

3515:34:02 [SYS@myschema](mailto:SYS@myschema)> select comp_name, status, substr(version,1,10) as version from dba_registry;

COMP_NAME

STATUS VERSION

-------------------------------------------------------------------------------------------------------------------------------

----------------------------------------------------------------------------------------------- ----------- -------------------

Oracle9i Catalog Views

VALID 9.2.0.7.0

Oracle9i Packages and Types

VALID 9.2.0.7.0

Oracle Workspace Manager

VALID 9.2.0.1.0

JServer JAVA Virtual Machine

VALID 9.2.0.7.0

Oracle XDK for Java

VALID 9.2.0.9.0

Oracle9i Java Packages

VALID 9.2.0.7.0

Oracle interMedia

VALID 9.2.0.7.0

Spatial

VALID 9.2.0.7.0

Oracle Text

VALID 9.2.0.7.0

Oracle XML Database

VALID 9.2.0.7.0

Oracle Ultra Search

VALID 9.2.0.7.0

Oracle Data Mining

VALID 9.2.0.7.0

OLAP Analytic Workspace

UPGRADED 9.2.0.7.0

Oracle OLAP API

UPGRADED 9.2.0.7.0

OLAP Catalog

VALID 9.2.0.7.0

从上面可以清楚地看到,通过脚本手工创建的数据库少装了很多组件,现在考虑如何装组件 1 JServer JAVA Virtual Machine 2 Oracle XML Database

如果问题不能快速解决,都打算暂时迁回到老库去(将新库数据导入)。

解决步骤

后来在老大的指导下,通过以下步骤解决

停止实例。

停listener

启动1个实例。

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28connect / as sysdba

startup mount

alter system set "_system_trig_enabled" = false scope=memory;

alter database open;

-- if jvm not installed,install jvm

@?/javavm/install/initjvm.sql

-- install XML (xdk for java)

@?/xdk/admin/initxml.sql

select comp_id,comp_name,version,status from dba_registry;

SQL> select comp_name, status, substr(version,1,10) as version

2 from dba_registry;

COMP_NAME

--------------------------------------------------------------------------------

STATUS VERSION

---------------------- ----------------------------------------

Oracle9i Catalog Views

VALID 9.2.0.8.0

Oracle9i Packages and Types

VALID 9.2.0.8.0

JServer JAVA Virtual Machine

VALID 9.2.0.8.0

COMP_NAME

--------------------------------------------------------------------------------

STATUS VERSION

---------------------- ----------------------------------------

Oracle XDK for Java

VALID 9.2.0.10.0

新装组件后,应用重新编译存过通过,然后通知应用人员进行了系统测试,测试正常。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值