web-dev-qa-db-fra.com

Comment désinstaller / supprimer complètement Oracle 11g (client)?

Comment désinstaller/supprimer complètement Oracle 11g (client)?

deinstall.bat ne fonctionne pas.

Modifier: Discussion complémentaire sur les raisons pour lesquelles cette question a été fermée et supprimée: https://meta.stackexchange.com/questions/190441/ pourquoi-était-cette-question-liée-à-désinstaller-le-client-de-base-de-données-Oracle-supprimé

74
Yves

En supposant une installation de Windows, veuillez vous référer à ceci:

http://www.Oracle-base.com/articles/misc/ManualOracleUninstall.php

  • Désinstallez tous les composants Oracle à l'aide de Oracle Universal Installer (OUI).
  • Exécutez regedit.exe et supprimez la clé HKEY_LOCAL_MACHINE\SOFTWARE\Oracle. Cela contient les entrées de registre pour tous les produits Oracle.
  • Supprimez toutes les références aux services Oracle laissées dans la partie suivante du registre: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Ora* Il devrait être assez évident de savoir lesquelles sont liées à Oracle.
  • Redémarrez votre machine.
  • Supprimez le répertoire "C:\Oracle" ou le répertoire correspondant à votre Oracle_BASE.
  • Supprimez le répertoire "C:\Program Files\Oracle".
  • Videz le contenu de votre répertoire "C:\temp".
  • Videz votre corbeille.

Attirant l'attention sur certains excellents commentaires laissés ici:

  • Faites attention lorsque vous suivez l'une des choses énumérées ici (ci-dessus ou ci-dessous), car cela pourrait enlever ou endommager tout autre produit installé par Oracle.
  • Pour Windows 64 bits (x64), vous devez également supprimer la clé HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Oracle du registre.
  • Nettoyez-le en supprimant les raccourcis associés installés dans le menu Démarrer.
  • Variables d'environnement de nettoyage:
    • Envisagez de supprimer %Oracle_HOME%.
    • Supprimez tous les chemins inutiles de %PATH%.

Cet ensemble d’instructions correspond à un processus presque identique que j’avais moi-même procédé à une ingénierie inverse au fil des années après quelques installations désordonnées d’Oracle et qui répondait presque toujours aux besoins.

Notez que même si l’OUI n’est plus disponible ou ne fonctionne pas, il suffit de suivre les étapes restantes.

( Révision n ° 7 rétabli afin de ne pas indiquer de source erronée et de ne pas supprimer tout crédit pour les autres commentaires ayant contribué à la réponse. Des modifications supplémentaires sont appréciées (puis supprimez ce commentaire), si un manière à maintenir ces considérations.)

129
ziesemer

Il y a quelques actions supplémentaires que vous devriez considérer:

  • Supprimer les entrées de registre pour le MSDTC (MS Distributed Transaction Coordinator)

    Remarque: sur Internet, je n'ai trouvé cette étape que sur une seule page (privée). Je ne sais pas s'il est nécessaire/fonctionnel ou s'il casse quelque chose sur votre PC.

    • Regedit ouvert
    • Naviguez jusqu'à HKEY_LOCAL_MACHINE\Software\Microsoft\MSDTC\MTxOCI
    • Ajoutez un x avant chaque chaîne pour OracleOciLib, OracleSqlLib et OracleXaLib
    • Naviguez jusqu'à HKEY_LOCAL_MACHINE\Software\Wow6432Node\Microsoft\MSDTC\MTxOCI
    • Ajoutez un x avant chaque chaîne pour OracleOciLib, OracleSqlLib et OracleXaLib

    Sinon, ces fichiers, s’ils existent, seront toujours utilisés au prochain redémarrage et ne pourront pas être supprimés.

  • Supprimer la variable d'environnement Oracle_HOME, Oracle_BASE, TNS_ADMIN, NLS_LANG s'il existe

    Consultez également la documentation Oracle pour trouver toutes les variables d’environnement Oracle. Cependant, à part les variables énumérées ci-dessus, elles sont très rarement utilisées sur le client Windows: variables d’environnement Oracle

  • Annuler l'enregistrement du fichier oci.dll

    • Ouvrez une fenêtre de ligne de commande (Menu Démarrer -> Exécuter ... -> cmd)
    • Entrez regsvr32 /u oci.dll, resp. %windir%\SysWOW64\regsvr32 /u oci.dll

    • Dans certains cas, le fichier %Oracle_HOME%\bin\oci.dll est verrouillé et vous ne pouvez pas le supprimer. Dans ce cas, renommez le fichier (par exemple, oci.dll.x) et redémarrez le PC. Vous pourrez ensuite le supprimer.

  • Supprimez les assemblys Oracle .NET du Global Assembly Cache (GAC). Vous le faites généralement avec l'utilitaire gacutil , s'il est disponible sur votre système. Serait comme ça:

    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
    
    • L'entrée System.Data.OracleClient ne doit pas être supprimée, celle-ci est installée par Microsoft - pas par un composant Oracle!

    • Au lieu de gacutil /u ..., vous pouvez également utiliser OraProvCfg /action:ungac /providerpath:... si OraProvCfg est toujours disponible sur votre système. Vous pouvez le trouver sur %Oracle_HOME%\odp.net\managed\x64\OraProvCfg.exe.

  • Avec un éditeur de texte, ouvrez le fichier de configuration XML %SYSTEMROOT%\Microsoft.NET\Framework64\v4.0.30319\Config\machine.config et supprimez la branche <Oracle.manageddataaccess.client>, si elle existe.

    • Faites la même chose avec:

      %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
      

    Au lieu de modifier manuellement le fichier de configuration XML, vous pouvez également exécuter (si OraProvCfg.exe est toujours disponible sur votre système):

    %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
    
  • Vérifier les clés de registre suivantes et les supprimer si elles existent

    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
    
  • Supprimez le dossier d'inventaire, généralement C:\Program Files\Oracle\Inventory et C:\Program Files (x86)\Oracle\Inventory

  • Supprimez les dossiers temporaires %TEMP%\deinstall\, %TEMP%\OraInstall\ et %TEMP%\CVU* (par exemple %TEMP%\CVU_11.1.0.2.0_domscheit) s'ils existent.

9

Faites tout ce que suggère ziesemer.

Vous pouvez également vouloir supprimer du registre:

HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBCINST.INI\<any Ora* drivers> keys     

HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBCINST.INI\ODBC Drivers<any Ora* driver> values

Ils n'apparaissent donc plus dans les "Pilotes ODBC installés sur votre système" dans ODBC Administrateur de source de données

6
ranni rabadi

Faites tout ce que suggère ziesemer.

Vous voudrez peut-être aussi:

  • Arrêtez les services liés à Oracle (avant de les supprimer du registre).
  • Dans le registre, recherchez non seulement les entrées nommées "Oracle", mais aussi, par ex. pour "ODP".
2