¿Cómo desinstalar/eliminar completamente Oracle 11g (cliente)? [cerrado]
¿Cómo desinstalar o eliminar completamente Oracle 11g (cliente)?
Correr deinstall.bat
no funciona.
Editar: Más discusión relacionada con por qué se cerró y eliminó esta pregunta: ¿ Por qué se eliminó esta pregunta relacionada con la desinstalación de Oracle Database Client?
Suponiendo una instalación de Windows, consulte esto:
http://www.oracle-base.com/articles/misc/ManualOracleUninstall.php
- Desinstale todos los componentes de Oracle mediante Oracle Universal Installer (OUI).
- Ejecute regedit.exe y elimine la clave HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE. Contiene registros completos para todos los productos de Oracle.
- Elimine cualquier referencia a los servicios de Oracle que quede en la siguiente parte del registro:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Ora*
Debería ser bastante obvio cuáles se relacionan con Oracle.- Reinicie su máquina.
- Elimine el directorio "C:\Oracle", o cualquier directorio que sea su ORACLE_BASE.
- Elimine el directorio "C:\Program Files\Oracle".
- Vacíe el contenido de su directorio "C:\temp".
- Vacía tu papelera de reciclaje.
Llamando la atención adicional sobre algunos comentarios excelentes que se dejaron aquí:
- Tenga cuidado al seguir todo lo que se enumera aquí (arriba o abajo), ya que hacerlo puede eliminar o dañar cualquier otro producto instalado por Oracle.
- Para Windows de 64 bits (x64), también debe eliminar la
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\ORACLE
clave del registro. - Limpieza eliminando cualquier acceso directo relacionado que se haya instalado en el menú Inicio.
- Variables del entorno de limpieza:
- Considere eliminar
%ORACLE_HOME%
. - Elimine las rutas que ya no sean necesarias de
%PATH%
.
- Considere eliminar
Este conjunto de instrucciones coincide con un proceso casi idéntico al que yo mismo le hice ingeniería inversa a lo largo de los años después de algunas instalaciones fallidas de Oracle, y casi siempre ha satisfecho la necesidad.
Tenga en cuenta que incluso si la OUI ya no está disponible o no funciona, simplemente seguir los pasos restantes debería ser suficiente.
( Se revirtió la revisión n.° 7 para no citar erróneamente la fuente original y no eliminar el crédito a los otros comentarios que contribuyeron a la respuesta. Se agradecen más ediciones (y luego elimine este comentario), si se puede encontrar una manera de mantener estos consideraciones.)
Hay algunas acciones más que debes considerar:
- Eliminar entradas de registro para el Coordinador de transacciones distribuidas de MS (MSDTC)
Nota: en Internet encontré este paso solo en una única página (privada). No sé si es necesario/funciona o si rompe algo en tu PC.
Abrir Regedit
Navegar a
HKEY_LOCAL_MACHINE\Software\Microsoft\MSDTC\MTxOCI
Agregue una x antes de cada cadena para
OracleOciLib
,OracleSqlLib
yOracleXaLib
Navegar a
HKEY_LOCAL_MACHINE\Software\Wow6432Node\Microsoft\MSDTC\MTxOCI
Agregue una x antes de cada cadena para
OracleOciLib
,OracleSqlLib
yOracleXaLib
De lo contrario, estos archivos, si existen, seguirán utilizándose la próxima vez que reinicie y no podrán eliminarse.
Eliminar la variable de entorno ,,,
ORACLE_HOME
si existeORACLE_BASE
TNS_ADMIN
NLS_LANG
Consulte también el documento de Oracle para encontrar todas las variables de entorno relacionadas con Oracle; sin embargo, aparte de las variables enumeradas anteriormente, rara vez se utilizan en el cliente de Windows: Variables de entorno de Oracle
Anular el registro de oci.dll
Abra una ventana de línea de comando (Menú Inicio -> Ejecutar... -> cmd)
Entrar
regsvr32 /u oci.dll
, resp.%windir%\SysWOW64\regsvr32 /u oci.dll
En algunos casos, el archivo
%ORACLE_HOME%\bin\oci.dll
está bloqueado y no es posible eliminarlo. En tal caso, cambie el nombre del archivo (por ejemplo, a oci.dll.x) y reinicie la PC; luego podrá eliminarlo.
Elimine los ensamblados de Oracle .NET de la caché de ensamblados global (GAC). Normalmente esto se hace con la utilidad gacutil , si está disponible en su sistema. Sería así:
gacutil /u Policy.10.1.Oracle.DataAccess gacutil /u Policy.10.2.Oracle.DataAccess gacutil /u Policy.1.102.Oracle.DataAccess gacutil /u Policy.1.111.Oracle.DataAccess gacutil /u Policy.2.102.Oracle.DataAccess gacutil /u Policy.2.111.Oracle.DataAccess gacutil /u Policy.2.112.Oracle.DataAccess gacutil /u Policy.2.121.Oracle.DataAccess gacutil /u Policy.2.122.Oracle.DataAccess gacutil /u Policy.4.112.Oracle.DataAccess gacutil /u Policy.4.121.Oracle.DataAccess gacutil /u Policy.4.122.Oracle.DataAccess gacutil /u Oracle.DataAccess gacutil /u Oracle.DataAccess.resources gacutil /u Policy.4.121.Oracle.ManagedDataAccess gacutil /u Policy.4.122.Oracle.ManagedDataAccess gacutil /u Oracle.ManagedDataAccess gacutil /u Oracle.ManagedDataAccess.resources gacutil /u Oracle.ManagedDataAccessDTC gacutil /u Oracle.ManagedDataAccessIOP gacutil /u Oracle.ManagedDataAccess.EntityFramework
- La entrada
System.Data.OracleClient
no debe eliminarse, ésta la instala Microsoft, ¡no es un componente de Oracle!
- La entrada
En lugar de
gacutil /u ...
, también puede usarloOraProvCfg /action:ungac /providerpath:...
si OraProvCfg todavía está disponible en su sistema. Puede encontrarlo en%ORACLE_HOME%\odp.net\managed\x64\OraProvCfg.exe
.Con un editor de texto, abra el archivo de configuración XML
%SYSTEMROOT%\Microsoft.NET\Framework64\v4.0.30319\Config\machine.config
y elimine la rama<oracle.manageddataaccess.client>
, si existe.Haz lo mismo con:
%SYSTEMROOT%\Microsoft.NET\Framework64\v4.0.30319\Config\machine.config %SYSTEMROOT%\Microsoft.NET\Framework\v4.0.30319\Config\machine.config %SYSTEMROOT%\Microsoft.NET\Framework64\v4.0.30319\Config\web.config %SYSTEMROOT%\Microsoft.NET\Framework\v4.0.30319\Config\web.config
En lugar de editar el archivo de configuración XML manualmente, también puede ejecutar (si OraProvCfg.exe todavía está disponible en su sistema):
%ORACLE_HOME%\odp.net\managed\x64\OraProvCfg.exe /action:unconfig /product:odpm /frameworkversion:v4.0.30319 %ORACLE_HOME%\odp.net\managed\x86\OraProvCfg.exe /action:unconfig /product:odpm /frameworkversion:v4.0.30319 %ORACLE_HOME%\odp.net\managed\x64\OraProvCfg.exe /action:unconfig /product:odp /frameworkversion:v4.0.30319 %ORACLE_HOME%\odp.net\managed\x86\OraProvCfg.exe /action:unconfig /product:odp /frameworkversion:v4.0.30319
Verifique las siguientes claves de registro y elimínelas si existen
HKLM\SOFTWARE\Wow6432Node\Microsoft\.NETFramework\v2.0.50727\AssemblyFoldersEx\ODP.Net HKLM\SOFTWARE\Wow6432Node\Microsoft\.NETFramework\v4.0.30319\AssemblyFoldersEx\ODP.Net HKLM\SOFTWARE\Wow6432Node\Microsoft\.NETFramework\v4.0.30319\AssemblyFoldersEx\Oracle.ManagedDataAccess HKLM\SOFTWARE\Wow6432Node\Microsoft\.NETFramework\v4.0.30319\AssemblyFoldersEx\Oracle.ManagedDataAccess.EntityFramework6 HKLM\SOFTWARE\Wow6432Node\Microsoft\.NETFramework\v4.0.30319\AssemblyFoldersEx\odp.net.managed HKLM\SOFTWARE\Wow6432Node\Microsoft\.NETFramework\v4.0.30319\AssemblyFoldersEx\Oracle.DataAccess.EntityFramework6\ HKLM\SOFTWARE\Microsoft\.NETFramework\v2.0.50727\AssemblyFoldersEx\ODP.Net HKLM\SOFTWARE\Microsoft\.NETFramework\v4.0.30319\AssemblyFoldersEx\ODP.Net HKLM\SOFTWARE\Microsoft\.NETFramework\v4.0.30319\AssemblyFoldersEx\Oracle.ManagedDataAccess HKLM\SOFTWARE\Microsoft\.NETFramework\v4.0.30319\AssemblyFoldersEx\Oracle.ManagedDataAccess.EntityFramework6 HKLM\SOFTWARE\Microsoft\.NETFramework\v4.0.30319\AssemblyFoldersEx\odp.net.managed HKLM\SOFTWARE\Microsoft\.NETFramework\v4.0.30319\AssemblyFoldersEx\Oracle.DataAccess.EntityFramework6\ HKLM\SYSTEM\CurrentControlSet\Services\EventLog\Application\Oracle Data Provider for .NET, Managed Driver HKLM\SYSTEM\CurrentControlSet\Services\EventLog\Application\Oracle Data Provider for .NET, Unmanaged Driver HKLM\SYSTEM\CurrentControlSet\Services\EventLog\Application\Oracle Provider for OLE DB
Elimine la carpeta de Inventario, normalmente
C:\Program Files\Oracle\Inventory
yC:\Program Files (x86)\Oracle\Inventory
Elimine las carpetas temporales
%TEMP%\deinstall\
, y (por ejemplo )%TEMP%\OraInstall\
, si existen.%TEMP%\OraInstall\
%TEMP%\oraremservicev2
%TEMP%\CVU_11.1.0.2.0_domscheit
Eliminar servicio
OracleRemExecServiceV2
yOracle%ORA_HOME_NAME%MTSRecoveryService
sc stop OracleRemExecServiceV2 sc delete OracleRemExecServiceV2 rmdir %TEMP%\oraremservicev2 /S /Q sc stop Oracle%ORA_HOME_NAME%MTSRecoveryService sc delete Oracle%ORA_HOME_NAME%MTSRecoveryService
Haz todo lo sugerido por ziesemer.
Es posible que también desee eliminar del registro:
HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBCINST.INI\<any Ora* drivers> keys
HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBCINST.INI\ODBC Drivers<any Ora* driver> values
Por lo tanto, ya no aparecen en los "Controladores ODBC que están instalados en su sistema" en el Administrador de fuentes de datos ODBC.
Haz todo lo sugerido por ziesemer.
Quizás también quieras:
- Detenga los servicios relacionados con Oracle (antes de eliminarlos del registro).
- En el registro, busque no sólo las entradas denominadas "Oracle", sino también, por ejemplo, "ODP".