Oracle 11g (클라이언트)를 제거 / 완전히 제거하는 방법은 무엇입니까?


79

Oracle 11g (클라이언트)를 제거 / 완전히 제거하는 방법은 무엇입니까?

deinstall.bat가 작동하지 않습니다.

편집 : 이 질문이 닫히고 삭제 된 이유와 관련된 추가 토론 : /meta/190441/why-was-this-question-related-to-uninstalling-the-oracle-database-client- 삭제됨


7
이 질문이 모드에 의해 닫혔다는 것이 믿기지 않는, 아래 게시물은 매우 도움이되었습니다. "개발자에게 도움이되는 모든 것"을 포함하도록 커뮤니티 범위를 넓히기를 바랍니다.
퍼지 분석

1
@fuzzyanalysis :이 질문은 중재자가 닫은 것이 아닙니다. 그 이름 옆에는 다이아몬드가 없습니다. 그들은 단지 사용자입니다.
ale

5
이 질문은 찬성 13 개, 즐겨 찾기 3 개, 다시 열기 투표 1 개, 조회수 69,870 개입니다. 그러나 귀중한 리소스 임에도 불구하고 삭제되지 않은 투표는 1 개에 불과합니다. 이것이 주제에서 벗어난 것으로 간주되는 경우 주제에서 더 잘 고려되는 다른 사이트는 무엇입니까? 중재자가이 지식을 본질적으로 영원히 잃어 버리는 대신 올바른 사이트로 이동할 수 있습니까? 아니면 보호 할 수 있습니까?
ziesemer

슈퍼 사용자로 대상 : superuser.com/questions/256762/...
매트 윌키

답변:


136

Windows 설치를 가정하면 다음을 참조하십시오.

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

  • OUI (Oracle Universal Installer)를 사용하여 모든 Oracle 구성 요소를 제거합니다.
  • regedit.exe를 실행하고 HKEY_LOCAL_MACHINE \ SOFTWARE \ ORACLE 키를 삭제합니다. 여기에는 모든 Oracle 제품에 대한 레지스트리 전체가 포함됩니다.
  • 레지스트리의 다음 부분에 남겨진 Oracle 서비스에 대한 모든 참조를 삭제하십시오 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Ora*. Oracle과 관련된 항목이 명확해야합니다.
  • 컴퓨터를 재부팅하십시오.
  • "C : \ Oracle"디렉토리 또는 ORACLE_BASE 디렉토리를 삭제하십시오.
  • "C : \ Program Files \ Oracle"디렉토리를 삭제하십시오.
  • "C : \ temp"디렉토리의 내용을 비 웁니다.
  • 휴지통을 비 웁니다.

여기에 남겨진 몇 가지 훌륭한 댓글에 대한 추가주의를 요청합니다.

  • 여기에 나열된 항목 (위 또는 아래)을 따를 때는 다른 Oracle 설치 제품이 제거되거나 손상 될 수 있으므로주의하십시오.
  • 64 비트 Windows (x64)의 HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\ORACLE경우 레지스트리 에서 키 도 삭제해야 합니다.
  • 시작 메뉴에 설치된 관련 바로 가기를 제거하여 정리합니다.
  • 환경 변수 정리 :
    • 제거하는 것이 좋습니다 %ORACLE_HOME%.
    • 에서 더 이상 필요하지 않은 경로를 제거합니다 %PATH%.

이 지침 세트는 몇 번의 엉망인 Oracle 설치 후 몇 년 동안 직접 리버스 엔지니어링했으며 거의 ​​항상 요구 사항을 충족시킨 거의 동일한 프로세스와 일치합니다.

OUI를 더 이상 사용할 수 없거나 작동하지 않더라도 나머지 단계를 따르는 것만으로도 충분합니다.

( 원본 소스를 잘못 인용하지 않고 답변에 기여한 다른 댓글에 대한 크레딧을 제거하지 않기 위해 수정본 # 7이 되돌 렸습니다.이를 유지하는 방법을 찾을 수있는 경우 추가 수정을 주시면 감사하겠습니다 (이 댓글을 삭제 해주세요). 고려 사항.)


4
64 비트 윈도우의 경우 HKEY_LOCAL_MACHINE \ SOFTWARE \ Wow6432Node \ ORACLE 키도 삭제해야합니다
itsho

3
먼저 "C : \ Program Files \ Oracle"을 삭제할 때주의하십시오. 다른 제품도 포함되어있을 수 있습니다. 둘째, 시작 메뉴를 수동으로 정리해야 할 수도 있습니다.)
user123444555621

2
경로 설정을 정리하고 ORACLE_HOME 환경 변수를 제거하는 것을 잊지 마십시오.
Brad Bruce

1
그 당신은 / \ 대신 사용하는 것을 약간 성가신 : P
gbtimmon을

1
@gbtimmon-레지스트리 경로를 참조한다고 가정합니다. 나는 단순히 원본 기사에서 그대로 인용했다. 그럼에도 불구하고 지금은 수정되었습니다. :-)
ziesemer 2014

10

고려해야 할 몇 가지 추가 조치가 있습니다.

  • MSDTC (MS Distributed Transaction Coordinator)에 대한 레지스트리 항목 제거

    참고 : 인터넷에서이 단계는 단일 (비공개) 페이지에서만 발견되었습니다. 그것이 필요한지 / 작동하는지 또는 그것이 당신의 PC에서 어떤 것을 망가 뜨리는 지 모르겠습니다.

    • Regedit 열기
    • 로 이동 HKEY_LOCAL_MACHINE\Software\Microsoft\MSDTC\MTxOCI
    • 각 문자열 전에 추가 x OracleOciLib, OracleSqlLibOracleXaLib
    • 로 이동 HKEY_LOCAL_MACHINE\Software\Wow6432Node\Microsoft\MSDTC\MTxOCI
    • 각 문자열 전에 추가 x OracleOciLib, OracleSqlLibOracleXaLib

    그렇지 않으면 이러한 파일이 있으면 다음에 다시 부팅 할 때 계속 사용되며 삭제할 수 없습니다.

  • 제거 환경 변수 ORACLE_HOME, ORACLE_BASE, TNS_ADMIN,NLS_LANG 만약 존재

    Oracle 문서를 확인하여 모든 Oracle 관련 환경 변수를 찾으십시오. 그러나 위에 나열된 변수를 제외하고는 Windows 클라이언트에서 거의 사용되지 않습니다. Oracle 환경 변수

  • oci.dll 등록 취소

    • 명령 줄 창을 엽니 다 (시작 메뉴-> 실행 ...-> cmd).
    • regsvr32 /u oci.dll, resp를 입력하십시오 .%windir%\SysWOW64\regsvr32 /u oci.dll

    • 경우에 따라 파일 %ORACLE_HOME%\bin\oci.dll이 잠겨있어 삭제할 수 없습니다. 이 경우 파일 이름 (예 : oci.dll.x)을 변경하고 PC를 재부팅 한 후 삭제할 수 있습니다.

  • GAC (Global Assembly Cache)에서 Oracle .NET 어셈블리를 제거합니다. 일반적으로 시스템에서 사용 가능한 경우 gacutil 유틸리티를 사용 하여이 작업을 수행 합니다. 다음과 같을 것입니다.

    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
    
    • 항목 System.Data.OracleClient을 제거해서는 안됩니다.이 항목 은 Oracle 구성 요소가 아닌 Microsoft에서 설치합니다!

    • 대신 OraProvCfg를 시스템에서 계속 사용할 수있는 경우 gacutil /u ...에도 사용할 수 있습니다 OraProvCfg /action:ungac /providerpath:.... 에서 찾을 수 있습니다 %ORACLE_HOME%\odp.net\managed\x64\OraProvCfg.exe.

  • 텍스트 편집기를 사용하여 XML 구성 파일을 열고 %SYSTEMROOT%\Microsoft.NET\Framework64\v4.0.30319\Config\machine.configbranch를 삭제하십시오 (있는 <oracle.manageddataaccess.client>경우).

    • 다음과 동일하게 수행하십시오.

      %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
      

    XML 구성 파일을 수동으로 편집하는 대신 다음을 실행할 수도 있습니다 (시스템에서 OraProvCfg.exe를 계속 사용할 수있는 경우).

    %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
    
  • 다음 레지스트리 키를 확인하고 존재하는 경우 삭제하십시오.

    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
    
  • 일반적으로 인벤토리 폴더를 삭제 C:\Program Files\Oracle\Inventory하고C:\Program Files (x86)\Oracle\Inventory

  • 삭제 임시 폴더 %TEMP%\deinstall\, %TEMP%\OraInstall\%TEMP%\CVU*(예 %TEMP%\CVU_11.1.0.2.0_domscheit) 기존의 경우.


GAC에서 항목을 제거하려면 Visual Studio와 함께 제공되는 gacutil.exe를 사용해야 할 수 있습니다. 예를 들어 'gacutil / u Oracle.DataAccess'입니다.
scott-pascoe

당신이 GAC를 찾을 수 없습니다 경우에 따라
Gokul

또한 "C : \ Windows \ Microsoft.NET \ assembly \ GAC_32"및 "C : \ Windows \ Microsoft.NET \ assembly \ GAC_64"에서 oracle * 및 정책 Oracle 폴더를 삭제 합니다.
Gokul 2017-04-14

에서 또한 * orainstall 디렉토리를 삭제 폴더 "C : \ 사용자 \ <사용자> \의 AppData \ 로컬 \ 온도"
Gokul

@Gokul, 더 나은 쓰기 : %TEMP%다른 폴더를 가리킬 수있는 폴더에서 삭제하십시오 .
Wernfried Domscheit

8

ziesemer가 제안한 모든 것을하십시오.

레지스트리에서 제거 할 수도 있습니다.

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

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

따라서 ODBC 데이터 원본 관리자의 "시스템에 설치된 ODBC 드라이버"에 더 이상 나타나지 않습니다.


64 비트 윈도우에서 32 비트 항목을 잊지 마세요 :HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\ODBC\ODBCINST.INI\...
Wernfried Domscheit

4
조심하세요 HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\ODBC\ODBCINST.INI\Microsoft ODBC for Oracle. 이 드라이버는 Microsoft, 즉 Windows 설치의 일부에서 제공합니다. 제거하면 새 Oracle 클라이언트 설치를 수행 할 때 다시 가져 오지 않습니다.
Wernfried Domscheit

3

ziesemer가 제안한 모든 것을하십시오.

다음을 수행 할 수도 있습니다.

  • Oracle 관련 서비스를 중지합니다 (레지스트리에서 삭제하기 전에).
  • 레지스트리에서 "Oracle"이라는 항목뿐만 아니라 "ODP"와 같은 항목도 찾습니다.
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.