How to uninstall / completely remove Oracle 11g (client)?

后端 未结 4 843
南旧
南旧 2020-11-22 12:53

How to uninstall / completely remove Oracle 11g (client)?

deinstall.bat doesn\'t work.

Edit: Further discussion related to why this questio

4条回答
  •  旧巷少年郎
    2020-11-22 13:41

    There are some more actions you should consider:

    • Remove Registry Entries for MS Distributed Transaction Coordinator (MSDTC)

      Note: on the Internet I found this step only at a single (private) page. I don't know if it is required/working or if it breaks anything on your PC.

      • Open Regedit
      • Navigate to HKEY_LOCAL_MACHINE\Software\Microsoft\MSDTC\MTxOCI
      • Add an x before each string for OracleOciLib, OracleSqlLib, and OracleXaLib
      • Navigate to HKEY_LOCAL_MACHINE\Software\Wow6432Node\Microsoft\MSDTC\MTxOCI
      • Add an x before each string for OracleOciLib, OracleSqlLib, and OracleXaLib

      Otherwise these files, if they exist, will still be in use next time you reboot, and unable to be deleted.

    • Remove environment variable ORACLE_HOME, ORACLE_BASE, TNS_ADMIN, NLS_LANG if exist

      Check also Oracle doc to find all Oracle related environment variables, however apart from variables listed above they are very rarely used on Windows Client: Oracle Environment Variables

    • Unregister oci.dll

      • Open a command line window (Start Menu -> Run... -> cmd)
      • Enter regsvr32 /u oci.dll, resp. %windir%\SysWOW64\regsvr32 /u oci.dll

      • In some cases the file %ORACLE_HOME%\bin\oci.dll is locked and you cannot delete it. In such case rename the file (e.g. to oci.dll.x) and reboot the PC, afterwards you can delete it.

    • Remove Oracle .NET assemblies from Global Assembly Cache (GAC). You do this typically with the gacutil utility, if available on your system. Would be like this:

      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
      
      • Entry System.Data.OracleClient should not be removed, this one is installed by Microsoft - not an Oracle component!

      • Instead of gacutil /u ... you can also use OraProvCfg /action:ungac /providerpath:... if OraProvCfg is still available on your system. You may find it at %ORACLE_HOME%\odp.net\managed\x64\OraProvCfg.exe.

    • With a text editor, open XML Config file %SYSTEMROOT%\Microsoft.NET\Framework64\v4.0.30319\Config\machine.config and delete branch , if existing.

      • Do the same with:

        %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
        

      Instead of editing the XML Config file manually you can also run (if OraProvCfg.exe is still available on your system):

      %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
      
    • Check following Registry Keys and delete them if existing

      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
      
    • Delete the Inventory folder, typically C:\Program Files\Oracle\Inventory and C:\Program Files (x86)\Oracle\Inventory

    • Delete temp folders %TEMP%\deinstall\, %TEMP%\OraInstall\ and %TEMP%\CVU* (e.g %TEMP%\CVU_11.1.0.2.0_domscheit) if existing.

提交回复
热议问题