BACKGROUND & OVERVIEW
Oracle Java Virtual Machine (JVM) is a feature of the Oracle Database. It provides the ability to run java code from within the database.
This document explains the full set of steps that need to be taken in order to perform a complete and working installation.
ASSUMPTIONS & PRE-REQUISITES
This document expects and assumes the following:
- The instructions are carried out by a qualified DBA, fully conversant with Oracle.
- A fully working database without JVM exists.
- All references to SID should be replaced with correct database name as derived using the database naming standard.
- As SYS, confirm the JVM is not already installed.
- SELECT comp_id, comp_name FROM dba_registry; should not list JAVAM or CATJAVA.
- As SYS, perform the JVM installation.
- As SYS, confirm the JVM is now fully installed:
SELECT comp_id, comp_name FROM dba_registry; COMP_ID COMP_NAME --------- -------------------------------------------- EM Oracle Enterprise Manager CATALOG Oracle Database Catalog Views CATPROC Oracle Database Packages and Types JAVAVM JServer JAVA Virtual Machine CATJAVA Oracle Database Java Packages
- In addition, the following healthcheck can be performed to confirm the stability of the installed JVM, further details can be found in Metalink Article 456949.1:
connect / as sysdba spool jvm_stats.log set serveroutput on set echo on set pagesize500 set linesize 100 column comp_name format a40 select comp_name, version, status from dba_registry; select owner, status, count(*) from all_objects where object_type like '%JAVA%' group by owner, status; select owner, object_type, count(*) from all_objects where object_type like '%JAVA%' and status <> 'VALID' group by owner, object_type; select owner, status, object_type, object_name from all_objects where object_name like'%DBMS_JAVA%'; select owner, status, object_type, object_name from all_objects where object_name like'%INITJVMAUX%'; select role from dba_roles where role like '%JAVA%'; select * from v$sgastat where POOL = 'java pool' or NAME = 'free memory'; show parameter pool_size show parameter sga select owner, object_type, status, dbms_java.longname(object_name) from all_objects where object_type like '%JAVA%' and status <> 'VALID'; spool off