Desintalação do Oracle Database 19cRU11 Falha com “ERROR: oracle/rat/tfa/util/ManageTfa”

Tentativa de deletar uma Working Copy no Fleet Patching and Provisioning falhou com seguinte erro:

[oracle@lab01 ~]$ cd /u01/app/oracle/product/19.11.0.0/db_1/deinstall
[oracle@lab01 deinstall]$ ./deinstall
Checking for required files and bootstrapping ...
Please wait ...
Location of logs /u01/app/oraInventory/logs/

############ ORACLE DECONFIG TOOL START ############


######################### DECONFIG CHECK OPERATION START #########################
## [START] Install check configuration ##


Checking for existence of the Oracle home location /u01/app/oracle/product/19.11.0.0/db_1
Oracle Home type selected for deinstall is: Oracle Single Instance Database
Oracle Base selected for deinstall is: /u01/app/oracle
Checking for existence of central inventory location /u01/app/oraInventory

## [END] Install check configuration ##


Network Configuration check config START

Network de-configuration trace file location: /u01/app/oraInventory/logs/netdc_check2021-08-12_09-52-09PM.log

Network Configuration check config END

Database Check Configuration START

Database de-configuration trace file location: /u01/app/oraInventory/logs/databasedc_check2021-08-12_09-52-09PM.log

Use comma as separator when specifying list of values as input

Specify the list of database names that are configured in this Oracle home []:
Database Check Configuration END

######################### DECONFIG CHECK OPERATION END #########################


####################### DECONFIG CHECK OPERATION SUMMARY #######################
Oracle Home selected for deinstall is: /u01/app/oracle/product/19.11.0.0/db_1
Inventory Location where the Oracle home registered is: /u01/app/oraInventory
Do you want to continue (y - yes, n - no)? [n]: y
A log of this session will be written to: '/u01/app/oraInventory/logs/deinstall_deconfig2021-08-12_09-52-08-PM.out'
Any error messages from this session will be written to: '/u01/app/oraInventory/logs/deinstall_deconfig2021-08-12_09-52-08-PM.err'

######################## DECONFIG CLEAN OPERATION START ########################
Database de-configuration trace file location: /u01/app/oraInventory/logs/databasedc_clean2021-08-12_09-52-09PM.log

Network Configuration clean config START

Network de-configuration trace file location: /u01/app/oraInventory/logs/netdc_clean2021-08-12_09-52-09PM.log

De-configuring backup files...
Backup files de-configured successfully.

The network configuration has been cleaned up successfully.

Network Configuration clean config END


######################### DECONFIG CLEAN OPERATION END #########################


####################### DECONFIG CLEAN OPERATION SUMMARY #######################
#######################################################################


############# ORACLE DECONFIG TOOL END #############

Using properties file /tmp/deinstall2021-08-12_09-52-00PM/response/deinstall_2021-08-12_09-52-08-PM.rsp
Location of logs /u01/app/oraInventory/logs/

############ ORACLE DEINSTALL TOOL START ############





####################### DEINSTALL CHECK OPERATION SUMMARY #######################
A log of this session will be written to: '/u01/app/oraInventory/logs/deinstall_deconfig2021-08-12_09-52-08-PM.out'
Any error messages from this session will be written to: '/u01/app/oraInventory/logs/deinstall_deconfig2021-08-12_09-52-08-PM.err'

######################## DEINSTALL CLEAN OPERATION START ########################
## [START] Preparing for Deinstall ##
Setting LOCAL_NODE to lab01
Setting CRS_HOME to false
Setting oracle.installer.invPtrLoc to /tmp/deinstall2021-08-12_09-52-00PM/oraInst.loc
Setting oracle.installer.local to false

ERROR: oracle/rat/tfa/util/ManageTfa
Exited from program.

############# ORACLE DEINSTALL TOOL END #############

Erro gravado no log:

[oracle@lab01 deinstall]$ cat /u01/app/oraInventory/logs/deinstall_deconfig2021-08-12_09-52-08-PM.err
java.lang.reflect.InvocationTargetException
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:498)
        at oracle.install.db.deinstall.wrapper.Deinstall.callCleanImpl(Deinstall.java:1876)
        at oracle.install.db.deinstall.wrapper.Deinstall.main(Deinstall.java:907)
Caused by: java.lang.NoClassDefFoundError: oracle/rat/tfa/util/ManageTfa
        at oracle.install.db.deinstall.core.PrepForOUIDeinstall.cleanConfig(PrepForOUIDeinstall.java:187)
        ... 6 more
Caused by: java.lang.ClassNotFoundException: oracle.rat.tfa.util.ManageTfa
        at java.net.URLClassLoader.findClass(URLClassLoader.java:382)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:418)
        at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:355)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:351)
        ... 7 more

Causa

Todas as as tentativa de deinstalar o Oracle Database com Release Update 11 e 12 falham devido ao bug “BUG 32900208 – DELETING 19C SE DBHOME FAILED WITH ERROR JAVA.LANG.NOCLASSDEFFOUNDERROR: ORACLE/RAT/TFA/UTIL/MANAGETFA“.

Referência:

19c Database Home Deinstall Fails Due To 19.11DBRU or 19.12DBRU with error JAVA.LANG.NOCLASSDEFFOUNDERROR: ORACLE/RAT/TFA/UTIL/MANAGETFA (Doc ID 2784544.1)

Solução

A solução mais elegante é aplicar o patch 32900208, mas isso só vale a pena o esforço se houver alguma automação que faz desinstalação dos DB Homes quando eles não são mais necessários. Por exemplo, com uso do Fleet Patching and Provisioning, é interessante ter esse patch aplicado na Gold Image para evitar erros ao tentar deletar Working Copies com 19cRU11 e 19cRU12.

Para uma solução mais rápida, basta fazer rollback do patch 32545013 (19.11.0.0.210420) ou do patch 32904851 (19.12.0.0.210720).

Exemplo:

[oracle@lab01 deinstall]$ cd /u01/app/oracle/product/19.11.0.0/db_1/OPatch
[oracle@lab01 OPatch]$ ./opatch lspatches
32579761;OCW RELEASE UPDATE 19.11.0.0.0 (32579761)
32545013;Database Release Update : 19.11.0.0.210420 (32545013)

OPatch succeeded.

Fazendo rollback do patch 19.11.0.0.210420 (32545013) :

[oracle@lab01 OPatch]$ ./opatch rollback -id 32545013
Oracle Interim Patch Installer version 12.2.0.1.25
Copyright (c) 2021, Oracle Corporation.  All rights reserved.


Oracle Home       : /u01/app/oracle/product/19.11.0.0/db_1
Central Inventory : /u01/app/oraInventory
   from           : /u01/app/oracle/product/19.11.0.0/db_1/oraInst.loc
OPatch version    : 12.2.0.1.25
OUI version       : 12.2.0.7.0
Log file location : /u01/app/oracle/product/19.11.0.0/db_1/cfgtoollogs/opatch/opatch2021-08-12_21-56-28PM_1.log


Patches will be rolled back in the following order:
   32545013
The following patch(es) will be rolled back: 32545013

Please shutdown Oracle instances running out of this ORACLE_HOME on the local system.
(Oracle Home = '/u01/app/oracle/product/19.11.0.0/db_1')


Is the local system ready for patching? [y|n]
y
User Responded with: Y

Rolling back patch 32545013...

RollbackSession rolling back interim patch '32545013' from OH '/u01/app/oracle/product/19.11.0.0/db_1'

Patching component oracle.rdbms.rsf, 19.0.0.0.0...
Deleting "kubsorccore.o" from archive "/u01/app/oracle/product/19.11.0.0/db_1/lib/libclient19.a"
Deleting "kubsorcppd.o" from archive "/u01/app/oracle/product/19.11.0.0/db_1/lib/libclient19.a"
Deleting "kubsutl.o" from archive "/u01/app/oracle/product/19.11.0.0/db_1/lib/libclient19.a"
Deleting "kubsbdcore.o" from archive "/u01/app/oracle/product/19.11.0.0/db_1/lib/libclient19.a"
Deleting "kubsbd.o" from archive "/u01/app/oracle/product/19.11.0.0/db_1/lib/libclient19.a"
Deleting "kubsorcpb.o" from archive "/u01/app/oracle/product/19.11.0.0/db_1/lib/libclient19.a"
Deleting "kubsbufio.o" from archive "/u01/app/oracle/product/19.11.0.0/db_1/lib/libclient19.a"
Deleting "kpuadg.o" from archive "/u01/app/oracle/product/19.11.0.0/db_1/lib/libclient19.a"
Deleting "kubscrf.o" from archive "/u01/app/oracle/product/19.11.0.0/db_1/lib/libclient19.a"
Deleting "qcpi8.o" from archive "/u01/app/oracle/product/19.11.0.0/db_1/lib/libgeneric19.a"
Deleting "qsodamd.o" from archive "/u01/app/oracle/product/19.11.0.0/db_1/lib/libgeneric19.a"
Deleting "skgzepclib.o" from archive "/u01/app/oracle/product/19.11.0.0/db_1/lib/libgeneric19.a"
Deleting "kgoms.o" from archive "/u01/app/oracle/product/19.11.0.0/db_1/lib/libgeneric19.a"
Deleting "skgzibr.o" from archive "/u01/app/oracle/product/19.11.0.0/db_1/lib/libgeneric19.a"
Deleting "skgrlib.o" from archive "/u01/app/oracle/product/19.11.0.0/db_1/lib/libgeneric19.a"
Deleting "skgzfndd.o" from archive "/u01/app/oracle/product/19.11.0.0/db_1/lib/libgeneric19.a"
Deleting "skgrlib_ipcdat.o" from archive "/u01/app/oracle/product/19.11.0.0/db_1/lib/libgeneric19.a"
Deleting "qesdsbc.o" from archive "/u01/app/oracle/product/19.11.0.0/db_1/lib/libcommon19.a"
Deleting "qesxldsb.o" from archive "/u01/app/oracle/product/19.11.0.0/db_1/lib/libcommon19.a"
Deleting "skfparity.o" from archive "/u01/app/oracle/product/19.11.0.0/db_1/lib/libcommon19.a"
Deleting "psonal.o" from archive "/u01/app/oracle/product/19.11.0.0/db_1/lib/libplc19_pic.a"
Deleting "psunal.o" from archive "/u01/app/oracle/product/19.11.0.0/db_1/lib/libplc19_pic.a"

Patching component oracle.rdbms.util, 19.0.0.0.0...

Patching component oracle.rdbms, 19.0.0.0.0...
Deleting "kpdbapx.o" from archive "/u01/app/oracle/product/19.11.0.0/db_1/lib/libserver19.a"
Deleting "ktbdat.o" from archive "/u01/app/oracle/product/19.11.0.0/db_1/lib/libserver19.a"
Deleting "kubsbufio.o" from archive "/u01/app/oracle/product/19.11.0.0/db_1/lib/libserver19.a"
Deleting "kcert.o" from archive "/u01/app/oracle/product/19.11.0.0/db_1/lib/libserver19.a"
Deleting "kubsd.o" from archive "/u01/app/oracle/product/19.11.0.0/db_1/lib/libserver19.a"
Deleting "kbclgdr.o" from archive "/u01/app/oracle/product/19.11.0.0/db_1/lib/libserver19.a"
Deleting "kbcs.o" from archive "/u01/app/oracle/product/19.11.0.0/db_1/lib/libserver19.a"
Deleting "kge.o" from archive "/u01/app/oracle/product/19.11.0.0/db_1/lib/libserver19.a"
Deleting "qjsntrans.o" from archive "/u01/app/oracle/product/19.11.0.0/db_1/lib/libserver19.a"
Deleting "kqro.o" from archive "/u01/app/oracle/product/19.11.0.0/db_1/lib/libserver19.a"
Deleting "kpoxcd.o" from archive "/u01/app/oracle/product/19.11.0.0/db_1/lib/libserver19.a"
Deleting "ksmpgaum.o" from archive "/u01/app/oracle/product/19.11.0.0/db_1/lib/libserver19.a"

Patching component oracle.assistants.acf, 19.0.0.0.0...

Patching component oracle.assistants.deconfig, 19.0.0.0.0...

Patching component oracle.assistants.server, 19.0.0.0.0...

Patching component oracle.buildtools.rsf, 19.0.0.0.0...

Patching component oracle.ctx, 19.0.0.0.0...

Patching component oracle.dbjava.ic, 19.0.0.0.0...

Patching component oracle.dbjava.jdbc, 19.0.0.0.0...

Patching component oracle.dbjava.ucp, 19.0.0.0.0...

Patching component oracle.dbtoolslistener, 19.0.0.0.0...

Patching component oracle.duma, 19.0.0.0.0...

Patching component oracle.javavm.client, 19.0.0.0.0...

Patching component oracle.ldap.owm, 19.0.0.0.0...

Patching component oracle.ldap.rsf, 19.0.0.0.0...

Patching component oracle.marvel, 19.0.0.0.0...

Patching component oracle.network.rsf, 19.0.0.0.0...

Patching component oracle.oracore.rsf, 19.0.0.0.0...

Patching component oracle.precomp.common.core, 19.0.0.0.0...

Patching component oracle.rdbms.dbscripts, 19.0.0.0.0...

Patching component oracle.rdbms.deconfig, 19.0.0.0.0...

Patching component oracle.rdbms.oci, 19.0.0.0.0...

Patching component oracle.rhp.db, 19.0.0.0.0...

Patching component oracle.sdo, 19.0.0.0.0...

Patching component oracle.sdo.locator.jrf, 19.0.0.0.0...

Patching component oracle.sqlplus, 19.0.0.0.0...

Patching component oracle.wwg.plsql, 19.0.0.0.0...

Patching component oracle.xdk, 19.0.0.0.0...

Patching component oracle.odbc, 19.0.0.0.0...

Patching component oracle.xdk.rsf, 19.0.0.0.0...
Deleting "jzntrans.o" from archive "/u01/app/oracle/product/19.11.0.0/db_1/lib/libxml19.a"
Deleting "jznpathval.o" from archive "/u01/app/oracle/product/19.11.0.0/db_1/lib/libxml19.a"

Patching component oracle.dbdev, 19.0.0.0.0...

Patching component oracle.xdk.parser.java, 19.0.0.0.0...

Patching component oracle.javavm.server, 19.0.0.0.0...

Patching component oracle.sdo.locator, 19.0.0.0.0...

Patching component oracle.rdbms.install.plugins, 19.0.0.0.0...

Patching component oracle.mgw.common, 19.0.0.0.0...

Patching component oracle.ons, 19.0.0.0.0...

Patching component oracle.ons.ic, 19.0.0.0.0...

Patching component oracle.ldap.rsf.ic, 19.0.0.0.0...

Patching component oracle.oraolap, 19.0.0.0.0...

Patching component oracle.ctx.atg, 19.0.0.0.0...

Patching component oracle.rdbms.install.common, 19.0.0.0.0...

Patching component oracle.sqlplus.ic, 19.0.0.0.0...

Patching component oracle.oraolap.dbscripts, 19.0.0.0.0...

Patching component oracle.xdk.xquery, 19.0.0.0.0...

Patching component oracle.network.listener, 19.0.0.0.0...

Patching component oracle.rdbms.dv, 19.0.0.0.0...

Patching component oracle.oraolap.api, 19.0.0.0.0...

Patching component oracle.rdbms.scheduler, 19.0.0.0.0...

Patching component oracle.rdbms.crs, 19.0.0.0.0...

Patching component oracle.ctx.rsf, 19.0.0.0.0...

Patching component oracle.ldap.security.osdt, 19.0.0.0.0...

Patching component oracle.precomp.rsf, 19.0.0.0.0...

Patching component oracle.ldap.client, 19.0.0.0.0...

Patching component oracle.network.client, 19.0.0.0.0...

Patching component oracle.rdbms.drdaas, 19.0.0.0.0...

Patching component oracle.rdbms.rman, 19.0.0.0.0...

Patching component oracle.rdbms.lbac, 19.0.0.0.0...

Patching component oracle.nlsrtl.rsf, 19.0.0.0.0...

Patching component oracle.ovm, 19.0.0.0.0...

Patching component oracle.rdbms.rsf.ic, 19.0.0.0.0...

Patching component oracle.precomp.common, 19.0.0.0.0...

Patching component oracle.precomp.lang, 19.0.0.0.0...

Patching component oracle.jdk, 1.8.0.201.0...
RollbackSession removing interim patch '32545013' from inventory
Inactive sub-set patch [29517242] has become active due to the rolling back of a super-set patch [32545013].
Please refer to Doc ID 2161861.1 for any possible further required actions.
Log file location: /u01/app/oracle/product/19.11.0.0/db_1/cfgtoollogs/opatch/opatch2021-08-12_21-56-28PM_1.log

OPatch succeeded.

Executando a desinstalação novamente:

[oracle@lab01 OPatch]$ cd /u01/app/oracle/product/19.11.0.0/db_1/deinstall/
[oracle@lab01 deinstall]$ ./deinstall
Checking for required files and bootstrapping ...
Please wait ...
Location of logs /u01/app/oraInventory/logs/

############ ORACLE DECONFIG TOOL START ############


######################### DECONFIG CHECK OPERATION START #########################
## [START] Install check configuration ##


Checking for existence of the Oracle home location /u01/app/oracle/product/19.11.0.0/db_1
Oracle Home type selected for deinstall is: Oracle Single Instance Database
Oracle Base selected for deinstall is: /u01/app/oracle
Checking for existence of central inventory location /u01/app/oraInventory

## [END] Install check configuration ##


Network Configuration check config START

Network de-configuration trace file location: /u01/app/oraInventory/logs/netdc_check2021-08-12_10-06-53PM.log

Network Configuration check config END

Database Check Configuration START

Database de-configuration trace file location: /u01/app/oraInventory/logs/databasedc_check2021-08-12_10-06-53PM.log

Use comma as separator when specifying list of values as input

Specify the list of database names that are configured in this Oracle home []:
Database Check Configuration END

######################### DECONFIG CHECK OPERATION END #########################


####################### DECONFIG CHECK OPERATION SUMMARY #######################
Oracle Home selected for deinstall is: /u01/app/oracle/product/19.11.0.0/db_1
Inventory Location where the Oracle home registered is: /u01/app/oraInventory
Do you want to continue (y - yes, n - no)? [n]: y
A log of this session will be written to: '/u01/app/oraInventory/logs/deinstall_deconfig2021-08-12_10-06-52-PM.out'
Any error messages from this session will be written to: '/u01/app/oraInventory/logs/deinstall_deconfig2021-08-12_10-06-52-PM.err'

######################## DECONFIG CLEAN OPERATION START ########################
Database de-configuration trace file location: /u01/app/oraInventory/logs/databasedc_clean2021-08-12_10-06-53PM.log

Network Configuration clean config START

Network de-configuration trace file location: /u01/app/oraInventory/logs/netdc_clean2021-08-12_10-06-53PM.log

De-configuring backup files...
Backup files de-configured successfully.

The network configuration has been cleaned up successfully.

Network Configuration clean config END


######################### DECONFIG CLEAN OPERATION END #########################


####################### DECONFIG CLEAN OPERATION SUMMARY #######################
#######################################################################


############# ORACLE DECONFIG TOOL END #############

Using properties file /tmp/deinstall2021-08-12_10-06-25PM/response/deinstall_2021-08-12_10-06-52-PM.rsp
Location of logs /u01/app/oraInventory/logs/

############ ORACLE DEINSTALL TOOL START ############





####################### DEINSTALL CHECK OPERATION SUMMARY #######################
A log of this session will be written to: '/u01/app/oraInventory/logs/deinstall_deconfig2021-08-12_10-06-52-PM.out'
Any error messages from this session will be written to: '/u01/app/oraInventory/logs/deinstall_deconfig2021-08-12_10-06-52-PM.err'

######################## DEINSTALL CLEAN OPERATION START ########################
## [START] Preparing for Deinstall ##
Setting LOCAL_NODE to lab01
Setting CRS_HOME to false
Setting oracle.installer.invPtrLoc to /tmp/deinstall2021-08-12_10-06-25PM/oraInst.loc
Setting oracle.installer.local to false

## [END] Preparing for Deinstall ##

Setting the force flag to false
Setting the force flag to cleanup the Oracle Base
Oracle Universal Installer clean START

Detach Oracle home '/u01/app/oracle/product/19.11.0.0/db_1' from the central inventory on the local node : Done

Delete directory '/u01/app/oracle/product/19.11.0.0/db_1' on the local node : Done

The Oracle Base directory '/u01/app/oracle' will not be removed on local node. The directory is in use by Oracle Home '/u01/app/oracle/product/19.3.0.0/db_1'.

Oracle Universal Installer cleanup was successful.

Oracle Universal Installer clean END


## [START] Oracle install clean ##


## [END] Oracle install clean ##


######################### DEINSTALL CLEAN OPERATION END #########################


####################### DEINSTALL CLEAN OPERATION SUMMARY #######################
Successfully detached Oracle home '/u01/app/oracle/product/19.11.0.0/db_1' from the central inventory on the local node.
Successfully deleted directory '/u01/app/oracle/product/19.11.0.0/db_1' on the local node.
Oracle Universal Installer cleanup was successful.

Review the permissions and contents of '/u01/app/oracle' on nodes(s) 'lab01'.
If there are no Oracle home(s) associated with '/u01/app/oracle', manually delete '/u01/app/oracle' and its contents.
Oracle deinstall tool successfully cleaned up temporary directories.
#######################################################################


############# ORACLE DEINSTALL TOOL END #############

A desinstalação concluiu com sucesso. De acordo a Doc ID 2784544.1, esse problema será resolvido no 19cR13 (OUT 2021).

Leave a Comment

Scroll to Top

Discover more from Blog do Dibiei

Subscribe now to keep reading and get access to the full archive.

Continue reading