RE: removal of Java from existing databases
Date: Tue, 20 Oct 2015 15:11:45 +0000
Message-ID: <AM4PR01MB1474B6A491EE573A7C73C0B9F4390_at_AM4PR01MB1474.eurprd01.prod.exchangelabs.com>
Hi
Did that on 10.2.0.4 before migrating into 11g. Used metalink notes to check for dependencies and removal instructions, just like you do. Keep in mind, that 11g has network ACL’s for utl_tcp/utl_http, etc. I haven’t find a way around XML/Java packages for that functionality, meaning for one database which used HTTP to send some data out of the database I had to leave java/xml.
Brgds,
Laimis N
From: oracle-l-bounce_at_freelists.org [mailto:oracle-l-bounce_at_freelists.org] On Behalf Of Adric Norris
Sent: Monday, October 19, 2015 8:07 PM
To: oracle-l
Subject: removal of Java from existing databases
We have a number of databases, primarily 11.2.0.4 64-bit on Linux and Solaris, which unnecessarily have Java installed (among other components). Since the quarterly Java PSU can't be applied in a rolling manner, and we aren't really using Java anyway, we're strongly considering taking a one-time outage to deinstall the JavaVM and CATJAVA components from all of our environments. Ideally we want to eliminate all traces, so that the databases behave as if the Java subsystem had never been installed in the first place.
The plan is to follow step 2 (Remove the JVM) from MOS document 1112983.1 (How to Reload the JVM in 11.2.0.x). Basically, this comes down to the following:
- Start of File full_rmjvm.sql spool full_rmjvm.log set echo on connect / as sysdba startup mount alter system set "_system_trig_enabled" = false scope=memory; alter system enable restricted session; alter database open; _at_?/rdbms/admin/catnoexf.sql _at_?/rdbms/admin/catnojav.sql _at_?/xdk/admin/rmxml.sql _at_?/javavm/install/rmjvm.sql truncate table java$jvm$status; select * from obj$ where obj#=0 and type#=0; delete from obj$ where obj#=0 and type#=0; commit; select owner, count(*) from all_objects where object_type like '%JAVA%' group by owner; select obj#, name from obj$ where type#=28 or type#=29 or type#=30 or namespace=32; select o1.name<http://o1.name> from obj$ o1,obj$ o2 where o1.type#=5 and o1.owner#=1 and o1.name<http://o1.name>=o2.name<http://o2.name> and o2.type#=29; shutdown immediate set echo off spool off exit
- End of File full_rmjvm.sql
Once complete, we would then followup by removing of any of the following components which are found to be present.
- Oracle Multimedia (ORDSYS, ORDIM)
- Oracle Ultra Search (WKSYS)
- Oracle Data Mining (DMSYS)
- Oracle Spatial (MDSYS)
- Oracle Rules Manager and Expression Filter (EXFSYS)
- Oracle Warehouse Builder (OWBSYS)
- OLAP Has anyone gone through a similar exercise? And if so, did you encounter any "gotchas" which I should be watching out for? Some of these environments are using GoldenGate for Oracle-to-Oracle data replication... not sure if this complicates matters or not.
Thanx!
--
"In the beginning the Universe was created. This has made a lot of people very angry and been widely regarded as a bad move." -Douglas Adams
-- http://www.freelists.org/webpage/oracle-lReceived on Tue Oct 20 2015 - 17:11:45 CEST