How to Add the JVM Component to an Existing Oracle Database
Applies to: Oracle Server - Enterprise Edition - Version 11.2.0.1.0 and later Information in this document applies to any platform. This article details how to install the JVM in an existing Oracle11g Release 2 database. Goal Add the Oracl
Applies to:
Oracle Server - Enterprise Edition - Version 11.2.0.1.0 and laterInformation in this document applies to any platform.
This article details how to install the JVM in an existing Oracle11g Release 2 database.
Goal
Add the Oracle JVM component to an existing Oracle Database or instance.
As with all destructive actions, Oracle Corporation strongly advises taking a FULL COLD BACKUP of the database before these actions are performed.
Fix
There are two options:
Option 1. Add the Oracle JVM component using the Database Configuration Assistant Utility
a. Start the Database Configuration Assistant and Click Next at the Welcome screen.
b. Choose the option to configure a database. Click Next
c. Select the database service name to configure. Click Next
c. Click the Button labeled "Standard Database Components" and check or enable the box "Oracle JVM". Click Ok.
d. Click Next and then Finish to complete the action.
Option 2. Manually Add the JVM Component by executing the initjvm.sql script.
The following steps need to be executed precisely as listed below to ensure that they complete successfully:
a. Verify the following system requirements are available:
The Shared Pool has at least 96Mb of free space.
The Java Pool has at least 50Mb of free space
The SYSTEM tablespace has at least 70Mb of free space
The SYSTEM RBS has at least 100Mb of free space
The initjvm.sql script in 11g will check these resources are available when it is run, and if they aren't available the execution of the script will terminate with an error indicating which resource needs to be increased.
b. Shutdown the instance and then create and run the following sql script from a new sqlplus session:
-- Start of File full_jvminst.sql
spool full_jvminst.log;
set echo on
connect / as sysdba
startup mount
alter system set "_system_trig_enabled" = false scope=memory;
alter database open;
select obj#, name from obj$
where type#=28 or type#=29 or type#=30 or namespace=32;
@?/javavm/install/initjvm.sql
select count(*), object_type from all_objects
where object_type like '%JAVA%' group by object_type;
@?/xdk/admin/initxml.sql
select count(*), object_type from all_objects
where object_type like '%JAVA%' group by object_type;
@?/xdk/admin/xmlja.sql
select count(*), object_type from all_objects
where object_type like '%JAVA%' group by object_type;
@?/rdbms/admin/catjava.sql
select count(*), object_type from all_objects
where object_type like '%JAVA%' group by object_type;
@?/rdbms/admin/catexf.sql
select count(*), object_type from all_objects
where object_type like '%JAVA%' group by object_type;
shutdown immediate
set echo off
spool off
exit
-- End of File full_jvminst.sql
c. Once the database has been restarted, resolve any invalid objects.
This can be performed by running the utlrp.sql script e.g.:
@?/rdbms/admin/utlrp.sql