Oracle Clientのアンインストール方法を徹底解説

Oracle Clientのアンインストール方法を徹底解説

はじめに

Oracle Clientは、アプリケーションがOracle Databaseに接続するために必要なソフトウェアです。データベース開発、運用、あるいは単にOracle Database上のデータを利用する際に不可欠なコンポーネントとなります。しかし、バージョンアップ、不要になった、あるいはインストール時の問題や動作不良を解決するために、Oracle Clientをアンインストールする必要が生じることがあります。

Oracle Clientのアンインストールは、単にプログラムを削除するだけでなく、システムに残されたファイル、レジストリ情報(Windowsの場合)、環境変数などを適切にクリーンアップする必要があります。これらの情報がシステムに残っていると、その後の再インストールや他のソフトウェアの動作に悪影響を及ぼす可能性があります。特に、複数のバージョンのOracle Clientや他のOracle製品が同じシステムにインストールされている場合、依存関係が複雑になり、手動でのクリーンアップは非常に困難かつリスクの高い作業となります。

この記事では、Oracle Clientを安全かつ確実にアンインストールするための詳細な手順を、主要なオペレーティングシステム(WindowsおよびLinux/Unix)別に解説します。推奨される自動アンインストールツール(Oracle Universal Installerやdeinstallツール)の使用方法を中心に、やむを得ない場合の手動アンインストール方法、アンインストール前の準備、アンインストール後の確認、そしてよくあるトラブルとその解決策についても網羅的に説明します。

約5000語というボリュームで、Oracle Clientのアンインストールに関するあらゆる側面を深く掘り下げていきます。この記事を読めば、Oracle Clientのアンインストールに関する疑問が解消され、自信を持ってアンインストール作業に取り組めるようになることを目指します。

1. アンインストールの前に知っておくべきことと準備

Oracle Clientのアンインストール作業を開始する前に、いくつか重要な考慮事項と準備が必要です。これらを怠ると、アンインストールが正常に完了しなかったり、システムに問題を引き起こしたりする可能性があります。

1.1. なぜアンインストールが必要か?

Oracle Clientをアンインストールする主な理由は以下の通りです。

  • バージョンアップ/ダウングレード: 新しいバージョンのClientに置き換えたい場合や、特定の理由で古いバージョンに戻す必要がある場合。
  • 不要になった: もうそのシステムでOracle Databaseに接続する必要がなくなった場合。
  • インストールまたは構成の問題: インストールに失敗した、動作がおかしい、構成ファイルに問題があるなどの場合、クリーンな状態から再インストールするためにアンインストールが必要になることがあります。
  • 他のOracle製品との競合: 異なるバージョンのOracle製品(Database Server, Client, Instant Clientなど)が混在している場合に問題が発生し、特定の製品をアンインストールする必要が生じることがあります。

1.2. アンインストールの難しさ

Oracle製品は、システムに深く統合される形でインストールされます。具体的には、以下の要素がシステムに配置されます。

  • プログラムファイル: 実行ファイル、ライブラリ、構成ファイルなどがOracle Homeディレクトリ以下に配置されます。
  • レジストリ情報(Windows): システム設定、インストール情報、環境設定などがレジストリに書き込まれます。複数のOracle Homeがある場合、レジストリは非常に複雑になります。
  • 環境変数: PATH、ORACLE_HOME、TNS_ADMINなどの環境変数が設定されることがあります。
  • サービス(Windows): Oracle関連のサービス(Oracle VSS Writerサービスなど)が登録されることがあります。
  • スタートメニュー/アプリケーションメニュー: プログラムへのショートカットが作成されます。
  • インベントリ情報: インストールされているOracle製品やパッチに関する情報が、Central Inventory(OUIが管理するインストール情報)に記録されます。

これらの要素を漏れなく、かつシステム内の他の重要なファイルや設定を誤って削除せずにクリーンアップする必要があるため、アンインストールは慎重に行う必要があります。

1.3. アンインストール前の準備事項

安全かつ確実なアンインストールのためには、以下の準備を必ず行いましょう。

1.3.1. 実行中のOracle関連プロセスの停止

アンインストール対象のOracle Clientを使用している、または関連するプロセスが実行されていると、ファイルの削除や設定変更ができない場合があります。タスクマネージャー(Windows)やps -ef | grep oracle(Linux/Unix)コマンドなどを使用して、Oracle関連のプロセス(例: sqlplus.exe, tnslsnr.exe, データベース接続を使用するカスタムアプリケーションなど)が実行されていないか確認し、停止します。

1.3.2. Oracle関連サービスの停止(Windows)

Oracle Clientのインストールによって、Oracle関連のサービスが登録されている場合があります。アンインストール前にこれらのサービスを停止し、可能であれば無効化しておきます。「サービス」(services.msc)を開き、名前に「Oracle」を含むサービスを探して停止します。例えば、「Oracle VSS Writer Service」などが見つかることがあります。

1.3.3. 環境変数の確認と記録

システムの環境変数(特にPATH)にOracle Clientの実行ファイルが含まれるディレクトリ(例: %ORACLE_HOME%\bin$ORACLE_HOME/bin)が追加されていることがあります。アンインストール後にこれらをクリーンアップする必要があるため、現在の環境変数の設定を記録しておきます。Windowsではシステムのプロパティ、Linux/Unixでは.bash_profile.profileなどのシェル設定ファイルを確認します。

1.3.4. 重要な構成ファイルやデータのバックアップ

Oracle Clientを使用する際に、tnsnames.ora, sqlnet.ora, listener.ora(リスナーは通常Clientにはないが、稀に構成される場合がある)、sqlnet.logなどの構成ファイルやログファイルが作成されていることがあります。これらのファイルには、データベースへの接続情報やネットワーク設定などが含まれているため、必要に応じてバックアップしておきましょう。また、Oracle Clientを使用するカスタムアプリケーションのスクリプトや設定ファイルなども、万が一に備えてバックアップしておくと安心です。これらのファイルは通常、%ORACLE_HOME%\network\admin$ORACLE_HOME/network/adminディレクトリ、あるいはTNS_ADMIN環境変数で指定されたディレクトリに配置されています。

1.3.5. 依存アプリケーションの確認

アンインストール対象のOracle Clientに依存しているアプリケーションがないか確認します。もし、特定のアプリケーションがこのClientを使用してOracle Databaseに接続している場合、アンインストール後にそのアプリケーションが起動できなくなるか、データベースに接続できなくなります。影響範囲を事前に把握しておくことが重要です。必要であれば、アプリケーション開発元にアンインストールや再インストールに関する情報がないか確認します。

1.3.6. 管理者権限の確保

Oracle Clientのアンインストール作業は、システム設定(レジストリ、環境変数、サービスなど)を変更するため、管理者権限が必要です。Windowsでは管理者としてコマンドプロンプトやOUIを起動し、Linux/Unixではrootユーザーまたはsudo権限を持つユーザーで作業を行います。

1.3.7. システムの復元ポイントの作成(Windows)

Windows環境でアンインストールを行う場合、アンインストール作業を開始する前にシステムの復元ポイントを作成しておくことを強く推奨します。これにより、万が一アンインストール作業中にシステムが不安定になったり、予期せぬ問題が発生したりした場合に、アンインストール前の状態に戻すことができます。

これらの準備をしっかりと行うことで、アンインストール作業をスムーズかつ安全に進めることができます。

2. WindowsでのOracle Clientアンインストール方法

Windows環境でのOracle Clientのアンインストールは、主に以下の3つの方法があります。推奨されるのは、Oracle公式のツールであるOracle Universal Installer (OUI) またはdeinstallツールを使用する方法です。手動でのアンインストールは、これらのツールが使用できない場合の最終手段であり、システムに深刻なダメージを与える可能性があるため非推奨です。

2.1. Oracle Universal Installer (OUI) を使用したアンインストール(推奨)

Oracle ClientをOUIを使用してインストールした場合、通常はOUIを使用してアンインストールするのが最も安全で確実な方法です。OUIは、システムに登録されたOracle製品の情報を管理しており、依存関係を考慮しながら適切にファイルを削除し、レジストリ情報をクリーンアップします。

2.1.1. OUIの起動方法

OUIを起動する方法はいくつかあります。

  • スタートメニューから起動: Oracle Clientをインストールした際に作成されたスタートメニューグループに、通常「Oracle Universal Installer」または「アンインストール」のような項目があります。それをクリックして起動します。
  • インストールメディア/ディレクトリから起動: Oracle Clientのインストールに使用したメディアや、インストールファイルを展開したディレクトリの中に、setup.exeoui.exeというファイルがあります。これを実行してOUIを起動します。起動後、「製品のアンインストール」を選択します。
  • インストール済みOracle Homeのディレクトリから起動: インストール済みのOracle Homeディレクトリ内のoui\binディレクトリにsetup.exeoui.exeが存在する場合があります。これを実行して起動します。
  • deinstall.batの利用(バージョンによる): 最近のバージョンでは、Oracle Homeディレクトリの直下やdeinstallディレクトリにdeinstall.batというツールが含まれていることがあります。これを実行すると、OUIによるアンインストールウィザードが起動したり、deinstallツールが起動したりします(詳しくは後述のdeinstallツールのセクションを参照)。どちらが起動するかはバージョンやインストール方法によります。

一般的には、スタートメニューからの起動が最も簡単です。もしスタートメニューに項目がない場合は、インストールメディアを探すか、deinstallツールを使用することを検討してください。

2.1.2. OUIでのアンインストール手順詳細

OUIが起動したら、以下の手順でアンインストールを進めます。画面はバージョンによって多少異なりますが、基本的な流れは同じです。

  1. ようこそ画面: OUIのようこそ画面が表示されます。通常はそのまま「次へ」をクリックします。もし言語選択画面が表示されたら、適切な言語を選択します。
  2. 操作の選択: 「製品のアンインストール」を選択します。(デフォルトで選択されていることが多いです)
  3. インベントリ画面: システムにインストールされているOracle製品の一覧(Central Inventoryに登録されている製品)が表示されます。
    • Oracle Homeの選択: 左側のツリー表示から、アンインストールしたいOracle ClientがインストールされているOracle Homeを選択します。Oracle Homeの名前(例: OraClient19Home1)やパス(例: C:\app\user\product\19.3.0\client_1)を確認し、間違いのないように選択します。
    • 製品の選択: 選択したOracle Homeに含まれる製品の一覧が表示されます。通常、Oracle ClientはOracle Clientという名前で表示されます。これを選択します。誤ってデータベースサーバーなど他の重要な製品を選択しないように注意してください。
    • 複数のOracle Homeがある場合、この画面で目的のOracle Homeを正しく選択することが非常に重要です。
  4. 依存関係のチェック: 選択したOracle Clientが他の製品の依存元になっている場合、警告が表示されることがあります。通常、Client単体であれば依存関係の問題は少ないですが、他のOracle製品やカスタムアプリケーションがこのClientを使用している可能性があることに留意してください。続行して良いか確認されます。
  5. アンインストールサマリー: アンインストール対象のOracle Home、製品、および削除される予定のファイルやレジストリキーなどのサマリーが表示されます。内容をよく確認します。
  6. アンインストール開始: 「アンインストール」ボタンをクリックします。
  7. アンインストール実行: アンインストール処理が開始されます。進行状況が表示されます。この処理には時間がかかる場合があります。
  8. アンインストール完了: アンインストールが正常に完了したことを示す画面が表示されます。「終了」または「閉じる」をクリックしてOUIを終了します。
2.1.3. OUIを使用するメリット・デメリット
  • メリット:
    • Oracle公式のツールであり、最も推奨される方法です。
    • システムのレジストリやCentral Inventoryの情報に基づいて、関連するファイルを網羅的に削除します。
    • 依存関係を考慮してくれるため、他のOracle製品に影響を与えるリスクが低減されます。
    • 手動でのクリーンアップに比べて手順が簡単で安全です。
  • デメリット:
    • OUI自体が破損している、またはCentral Inventoryの情報が壊れている場合、OUIが正常に起動しない、またはアンインストールできないことがあります。
    • OUIでインストールされていない製品や、手動で作成されたファイル(例: tnsnames.oraのバックアップコピーなど)は削除されない場合があります。

2.2. deinstallツールの使用

OUIが正常に動作しない場合や、OUIのバージョンが古い場合、あるいはスクリプトなどによる自動化を行う場合は、deinstallツールを使用するのが効果的です。deinstallツールは、OUIとは独立して動作するアンインストール専用のツールで、システム上のOracleソフトウェアを検出してクリーンアップを行います。特に11g R2以降のバージョンで推奨されるツールです。

2.2.1. deinstallツールの入手方法
  • インストール済みのOracle Home内: 11g R2以降のほとんどのバージョンでは、Oracle Homeディレクトリの直下またはdeinstallというサブディレクトリ内にdeinstall.bat(Windows)またはdeinstall(Linux/Unix)というツールが含まれています。
  • インストールメディア: Oracle Clientのインストールメディア(ダウンロードしたZIPファイルを展開したディレクトリ)の中にも含まれています。通常はdeinstallディレクトリ内です。
  • My Oracle Support (MOS): Oracleのサポートサイト(MOS)から単体でダウンロードすることも可能です。特定のバージョンやOS向けに提供されています。

まずは、アンインストールしたいOracle Homeのディレクトリ内を探すのが簡単です。見つからない場合はインストールメディアを確認します。

2.2.2. deinstallツールの実行方法

コマンドプロンプト(Windows)またはターミナル(Linux/Unix)から実行します。管理者権限が必要です。

基本的な実行方法は以下の通りです。

batch
rem Windowsの場合
cd C:\path\to\your\oracle_home\deinstall または cd C:\path\to\your\deinstall_tool_location
deinstall.bat

“`bash

Linux/Unixの場合

cd /path/to/your/oracle_home/deinstall または cd /path/to/your/deinstall_tool_location
./deinstall
“`

ツールを実行すると、対話形式でアンインストール対象のOracle Homeや削除するコンポーネントなどを尋ねられます。

2.2.3. deinstallツールの主要オプション

deinstallツールにはいくつかの便利なオプションがあります。

  • -home <Oracle Homeパス>: アンインストールしたいOracle Homeのパスを明示的に指定します。システムに複数のOracle Homeがある場合や、ツールが自動検出できない場合に便利です。
    batch
    deinstall.bat -home C:\app\user\product\19.3.0\client_1
  • -paramfile <レスポンスファイルパス>: アンインストール設定を記述したレスポンスファイル(サイレントアンインストール用の設定ファイル)を指定して実行します。対話形式をスキップして自動的にアンインストールを実行したい場合に便利です。
    batch
    deinstall.bat -paramfile C:\path\to\your\deinstall_response_file.rsp
  • -silent: レスポンスファイルを指定せずにサイレントモードで実行します。この場合、ツールはデフォルトの設定や、環境変数から推測したOracle Homeなどを対象にアンインストールを実行します。通常は-paramfileと組み合わせて使用するか、-homeと組み合わせて対話なしで実行します。
    batch
    deinstall.bat -home C:\app\user\product\19.3.0\client_1 -silent
  • -checkonly: アンインストールは実行せず、システムチェックとアンインストール計画のレポート生成のみを行います。実際にアンインストールする前に問題がないか確認したい場合に有用です。
    batch
    deinstall.bat -home C:\app\user\product\19.3.0\client_1 -checkonly
  • -o <出力ディレクトリ>: -checkonlyオプションと組み合わせて、レポートファイルの出力先ディレクトリを指定します。
  • -logdir <ログディレクトリ>: ログファイルの出力先ディレクトリを指定します。
2.2.4. レスポンスファイルの使用

サイレントアンインストールを行いたい場合や、同じ設定で繰り返しアンインストールを実行したい場合は、レスポンスファイルを作成して使用します。レスポンスファイルのテンプレートは、インストールメディアのdeinstallディレクトリ内にあるdeinstall.rsp.tmplなどのファイルをコピーして編集することで作成できます。

レスポンスファイルには、以下のようなパラメータを記述します。

“`ini

アンインストール対象のOracle Homeのパス

ORACLE_HOME=C:\app\user\product\19.3.0\client_1

システム内のすべてのOracleソフトウェアをアンインストールするか(危険!)

YES/NO – デフォルトはNO

CLEAN_CENTRAL_INVENTORY=YES

削除対象のリスナー名(通常Clientにはないが念のため)

CRS=YES/NO

HOME_NAMES=

LOCAL_NODE=

NO_CONFIG=false

SILENT=false

TRACE=false

TNS_ADMIN=/path/to/your/tns_admin

削除対象のOracle Restart構成

RESTART_CONFIG=YES/NO

削除対象のClusterware構成

CLUSTERWARE_CONFIG=YES/NO

削除対象のSCANリスナー

SCAN_CONFIG=YES/NO

アンインストール後に残したい構成ファイルがあれば指定(フルパス、カンマ区切り)

DEINSTALL_LIST=

“`

レスポンスファイルを編集し、-paramfileオプションで指定してdeinstallツールを実行します。

2.2.5. deinstallツールを使用するメリット・デメリット
  • メリット:
    • OUIが破損している場合でも使用できる可能性があります。
    • スクリプトによる自動化が容易です(サイレントモード、レスポンスファイル)。
    • 特定のOracle Homeを指定してクリーンアップできます。
    • OUIと同様に、システム上のOracle製品情報を検出してクリーンアップを行います。
  • デメリット:
    • コマンドラインでの操作が必要なため、初心者にはやや敷居が高いかもしれません。
    • レスポンスファイルを作成する場合は、パラメータの意味を理解する必要があります。
    • OUIと同様に、公式ツールでインストールされていないファイルは削除されない場合があります。

deinstallツールは、現在のOracle製品のアンインストールにおいて最も推奨される方法の一つです。

2.3. 手動によるアンインストール(最終手段、非推奨)

OUIやdeinstallツールが全く使用できない場合、やむを得ず手動でアンインストールを行うことになります。しかし、この方法は非常にリスクが高く、システムに必要なファイルを誤って削除したり、レジストリ情報を破壊したりする可能性があり、システムの不安定化や再インストール時の問題を引き起こす可能性があります。特別な理由がない限り、この方法は避けてください。

手動でアンインストールを行う場合は、以下の手順を非常に慎重に進めてください。必ず事前にシステムの復元ポイントを作成し、重要なデータはバックアップしておいてください。

2.3.1. 警告

手動でのOracle Clientアンインストールは非常に複雑でリスクが高い作業です。誤った手順や情報の削除は、オペレーティングシステムや他のアプリケーションの動作に深刻な問題を引き起こす可能性があります。以下の手順は、公式ツールが使用できない場合の最終手段としてのみ実行し、自己責任で行ってください。

2.3.2. 手動アンインストール手順
  1. Oracle関連プロセスおよびサービスの停止:

    • タスクマネージャーを開き、Oracle関連のプロセスをすべて終了させます。
    • services.mscを開き、Oracle関連のサービスをすべて停止し、スタートアップの種類を「無効」に設定します。再起動時にサービスが起動しないようにするためです。
  2. レジストリの削除:

    • レジストリエディター(regedit.exe)を起動します。
    • 以下のレジストリキーを慎重に削除します。特に、複数のOracle製品がインストールされている場合は、削除対象のOracle Homeに関連するキーのみを削除するように細心の注意を払ってください。不明な場合は、削除せずに残す方が安全です。
      • HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE: このキー以下には、インストールされているOracle製品に関する情報、Oracle Homeのリスト、TNS_ADMINの設定などが含まれています。アンインストール対象のOracle Homeに関するサブキーや、Globalな設定を確認して削除します。特にALL_HOMESHOME<N>ORACLE_HOMESなどのキー配下を確認します。
      • HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services: ここにOracle関連のサービス(OracleService…, OracleVSSWriter…など)のキーが残っている場合があります。サービス名を特定し、対応するキーを削除します。サービス名が完全に一致するか確認が必要です。
      • HKEY_CURRENT_USER\SOFTWARE\ORACLE: 現在のユーザーに関するOracle設定が含まれている場合があります。
      • HKEY_CLASSES_ROOT\Oracle.*: Oracleに関連するファイルの種類やCOMオブジェクトなどの情報が含まれている場合があります。これも慎重に削除します。
    • 重要: HKEY_LOCAL_MACHINE\SOFTWARE\ORACLEキー全体を安易に削除しないでください。特に、他のOracle製品がインストールされている場合は、他の製品の情報まで削除してしまいます。アンインストールしたいOracle Homeに関連する情報のみを特定して削除します。通常は、ORACLE_HOMESキーの下に各Oracle Homeの情報(名前、パスなど)が登録されているので、それらの情報を参照しながら削除対象を判断します。
    • 削除対象のキーが非常に多く、判断が難しい場合は、レジストリの削除は最小限に留めるか、行わない方が安全なこともあります。
  3. 環境変数のクリーンアップ:

    • システムの環境変数設定を開きます(システムのプロパティ -> 詳細設定 -> 環境変数)。
    • システム変数とユーザー変数の両方を確認します。
    • PATH変数から、アンインストール対象のOracle Homeのbinディレクトリへのパス(例: C:\app\user\product\19.3.0\client_1\bin)を削除します。PATH変数は複数のパスがセミコロン(;)で区切られているため、削除したいパスのみを慎重に削除します。誤って他の重要なパスを削除しないように注意してください。
    • ORACLE_HOME変数が設定されている場合は、その変数自体を削除するか、正しいパスに修正します(他のOracle Homeが残っている場合)。
    • TNS_ADMIN変数が設定されている場合は、その変数自体を削除するか、正しいパスに修正します。
    • その他のOracle関連の環境変数(例: NLS_LANGなど)も、不要であれば削除します。
  4. Oracle Homeディレクトリの削除:

    • ファイルエクスプローラーを開き、アンインストール対象のOracle Homeディレクトリ(例: C:\app\user\product\19.3.0\client_1)を完全に削除します。
    • ディレクトリの使用中を示すエラーが表示される場合は、まだOracle関連のプロセスやサービスが完全に停止していない可能性があります。システムを再起動してから再度削除を試みてください。
    • ユーザーディレクトリ(例: C:\Users\YourUser\Oracle)やProgram Filesディレクトリ(例: C:\Program Files\Oracle)など、他の場所にOracle関連のファイルやディレクトリが作成されている場合もあります。これらも不要であれば削除します。特にCentral Inventoryの場所(通常はC:\Program Files\Oracle\InventoryまたはC:\Program Files (x86)\Oracle\Inventory)を削除すると、システム上のすべてのOracle製品のインストール情報が失われるため、他のOracle製品がインストールされている場合はInventoryディレクトリは絶対に削除しないでください。
  5. スタートメニューからの削除:

    • スタートメニューを開き、Oracle関連のグループやショートカット(例: Oracle – OraClient19Home1など)を右クリックして削除します。これはシステムにはほとんど影響しませんが、見た目をきれいにするために行います。
2.3.3. 手動アンインストールのリスクと限界
  • システム不安定化: レジストリ情報の誤削除は、OSの起動や他のアプリケーションの動作に深刻な影響を与える可能性があります。
  • 不完全なクリーンアップ: 手動では、システム内に散らばったすべてのOracle関連ファイルや設定を網羅的に見つけ出して削除することは非常に困難です。
  • 再インストール時の問題: 不完全にアンインストールされた状態では、新しいバージョンのOracle Clientをインストールする際に、以前のバージョンの情報が競合してインストールに失敗したり、動作が不安定になったりする可能性があります。
  • サポート対象外: 手動でのアンインストールはOracleの公式サポート対象外の作業です。問題が発生してもOracleからの支援は受けられません。

これらのリスクを理解した上で、最終手段としてのみ手動アンインストールを検討してください。可能な限りOUIまたはdeinstallツールの使用を強く推奨します。

2.4. Windowsの「プログラムと機能」からのアンインストール

Windowsのコントロールパネルにある「プログラムと機能」(または「プログラムの追加と削除」)からOracle Clientをアンインストールすることもできます。リストからOracle Clientを選択して「アンインストール」をクリックすると、通常は自動的にOracle Universal Installer (OUI) が起動し、OUIによるアンインストール手順が開始されます。

この方法は、結局のところOUIを使用する方法と同じですが、OUIの起動方法の一つとして知っておくと良いでしょう。ただし、プログラムと機能のリストに表示されない場合や、そこから起動してもOUIが正常に動作しない場合は、前述のOUIの直接起動やdeinstallツールの使用を試みてください。

3. Linux/UnixでのOracle Clientアンインストール方法

Linux/Unix環境でのOracle Clientのアンインストールは、Windowsと同様にdeinstallツールを使用するのが推奨される方法です。手動でのアンインストールも可能ですが、同様にリスクが高いため非推奨です。

3.1. deinstallツールの使用(推奨)

Windows版と同様に、Linux/Unix版のdeinstallツールもOracle Clientのアンインストールにおいて最も推奨される方法です。

3.1.1. deinstallツールの入手方法

Windows版と同様に、以下の場所から入手できます。

  • インストール済みのOracle Home内: Oracle Homeディレクトリの直下またはdeinstallというサブディレクトリ内にdeinstallという実行ファイルが含まれています。
  • インストールメディア: Oracle Clientのインストールメディア(ダウンロードしたZIPファイルを展開したディレクトリ)の中にも含まれています。通常はdeinstallディレクトリ内です。
  • My Oracle Support (MOS): Oracleのサポートサイト(MOS)から単体でダウンロードすることも可能です。
3.1.2. deinstallツールの実行方法

ターミナルを開き、アンインストール対象のOracle Homeをインストールしたユーザー(通常はoracleユーザーなど)またはrootユーザーで実行します。システム設定(/etc/oratabなど)を変更するため、一部の操作でroot権限が必要になります。deinstallツールは途中でroot権限での実行を求めます。

基本的な実行方法は以下の通りです。

“`bash

Oracle Homeのユーザーで実行する場合

cd /path/to/your/oracle_home/deinstall または cd /path/to/your/deinstall_tool_location
./deinstall
“`

ツールを実行すると、対話形式でアンインストール対象のOracle Homeなどを尋ねられます。

3.1.3. deinstallツールの主要オプション (Linux/Unix版)

オプションはWindows版とほぼ同じです。

  • -home <Oracle Homeパス>: アンインストールしたいOracle Homeのパスを明示的に指定します。
    bash
    ./deinstall -home /u01/app/oracle/product/19.0.0/client_1
  • -paramfile <レスポンスファイルパス>: アンインストール設定を記述したレスポンスファイルを指定して実行します。
    bash
    ./deinstall -paramfile /path/to/your/deinstall_response_file.rsp
  • -silent: サイレントモードで実行します。
    bash
    ./deinstall -home /u01/app/oracle/product/19.0.0/client_1 -silent
  • -checkonly: アンインストールは実行せず、システムチェックとレポート生成のみを行います。
    bash
    ./deinstall -home /u01/app/oracle/product/19.0.0/client_1 -checkonly
  • -o <出力ディレクトリ>: レポートファイルの出力先ディレクトリを指定します。
  • -logdir <ログディレクトリ>: ログファイルの出力先ディレクトリを指定します。
3.1.4. レスポンスファイルの使用 (Linux/Unix版)

Windows版と同様に、レスポンスファイル(deinstall.rsp.tmplなどをコピーして編集)を使用してサイレントアンインストールを実行できます。パラメータもほぼ同じです。

“`ini

アンインストール対象のOracle Homeのパス

ORACLE_HOME=/u01/app/oracle/product/19.0.0/client_1

システム内のすべてのOracleソフトウェアをアンインストールするか(危険!)

CLEAN_CENTRAL_INVENTORY=NO # or YES

その他のパラメータも必要に応じて設定

“`

3.1.5. deinstallツール実行時のrootスクリプト

deinstallツールは、システムの重要な設定ファイル(例: /etc/oratab, /etc/oraInst.loc)を編集するために、root権限でのスクリプト実行を求めることがあります。ツールの指示に従って、別のターミナルでrootユーザーに切り替えて指示されたスクリプトを実行してください。

“`bash

deinstallツールから指示された場合

su – root
/path/to/deinstall_generated_script.sh
exit
“`

3.1.6. deinstallツールを使用するメリット・デメリット (Linux/Unix版)

メリット・デメリットはWindows版と同様です。Linux/Unix環境では、Windowsのレジストリのような一元管理された設定情報がないため、deinstallツールは/etc/orataboraInst.loc、各Oracle Homeのファイルなどを検出してクリーンアップを行います。

3.2. 手動によるアンインストール(最終手段、非推奨)

Linux/Unix環境での手動アンインストールも非常にリスクが高い作業です。特に、/etc配下の重要なシステムファイルを誤って編集・削除すると、OSが起動しなくなるなどの深刻な問題が発生する可能性があります。可能な限りdeinstallツールを使用してください。

3.2.1. 警告

Linux/Unix環境での手動Oracle Clientアンインストールは、Windows以上にシステムへの影響が大きい可能性があります。誤った操作はOSの起動不能など、取り返しのつかない事態を招く恐れがあります。以下の手順は、公式ツールが使用できない場合の最終手段としてのみ実行し、自己責任で行ってください。

3.2.2. 手動アンインストール手順
  1. Oracle関連プロセスおよびサービスの停止:

    • Oracle Clientを使用しているプロセスを特定し、停止します。(例: ps -ef | grep oracleで確認し、kill <PID>で終了)
    • Clientインストールでサービスが登録されることは稀ですが、念のため確認します。
  2. Oracle Homeディレクトリの削除:

    • アンインストール対象のOracle Homeディレクトリを完全に削除します。通常、oracleユーザーなどのOracleソフトウェア所有ユーザーで実行します。
      bash
      rm -rf /u01/app/oracle/product/19.0.0/client_1
    • /u01/app/oracleのような親ディレクトリ以下に他のOracle Homeがないか確認し、誤って削除しないように注意してください。アンインストール対象のOracle Homeディレクトリのみを削除します。
  3. インベントリ情報のクリーンアップ:

    • Central Inventory(通常/etc/oraInst.locに場所が記述されています)から、アンインストールしたOracle Homeのエントリを削除します。/etc/oraInst.locを開き、inventory_locで指定されたディレクトリ(例: /u01/app/oraInventory)以下のContentsXML\inventory.xmlファイルを編集します。
    • 重要: inventory.xmlファイルはXML形式で、システム上のすべてのOracle製品のインストール情報が含まれています。XML構造を壊さずに、アンインストール対象のOracle Homeに対応する<HOME NAME="..." LOC="...">のようなエントリのみを慎重に削除します。このファイルを誤って編集すると、システム上のすべてのOracle製品の管理情報が失われ、再インストールやアンインストールが困難になります。他のOracle製品がインストールされている場合は、このファイルの編集は極めてリスクが高いです。自信がない場合は編集しない方が無難です。
  4. /etc/oratabの編集:

    • /etc/oratabファイルに、アンインストールしたOracle Homeに関するエントリが残っている場合があります。このファイルは、システム再起動時にデータベースインスタンスを起動するかどうかなどを制御するために使用されますが、Clientインストールでもエントリが追加されることがあります。
    • エントリは通常、ORACLE_SID:/path/to/oracle/home:<Y|N>のような形式です。アンインストールしたOracle Homeのパスを含む行を慎重に削除します。
  5. 環境変数のクリーンアップ:

    • アンインストール対象のOracle Clientを使用していたユーザーのシェル設定ファイル(例: ~/.bash_profile, ~/.bashrc, ~/.profileなど)を編集します。
    • PATH変数から、アンインストールしたOracle Homeのbinディレクトリへのパス(例: /u01/app/oracle/product/19.0.0/client_1/bin)を削除します。
    • ORACLE_HOME変数が設定されている場合は、その行を削除するか、他のOracle Homeのパスに修正します。
    • TNS_ADMIN変数が設定されている場合は、その行を削除するか、正しいパスに修正します。
    • その他のOracle関連の環境変数も、不要であれば削除します。
    • システム全体の設定ファイル(例: /etc/profileなど)にOracle関連の設定がある場合も確認し、削除または修正します。
  6. その他の関連ファイルの削除:

    • /usr/local/binなどに、Oracle Clientの実行ファイル(sqlplus, tnspingなど)へのシンボリックリンクが作成されている場合があります。これらのリンクも削除します。
    • 一時ディレクトリ(/tmpなど)にOracleインストーラー関連のファイルが残っている場合もありますが、通常は削除されなくても問題ありません。
3.2.3. 手動アンインストールのリスクと限界 (Linux/Unix版)

手動アンインストールに伴うリスクと限界はWindows版と同様です。特に、Linux/Unixのシステムファイル構造はWindowsのレジストリとは異なるため、どこにどのような設定がされているかを正確に把握していないと、システムを壊す可能性が非常に高くなります。

4. Mac OS XでのOracle Clientアンインストール方法

Mac OS Xでは、主にOracle Instant Clientが使用されることが多いです。Instant Clientは通常、OUIのようなインストーラーを使用せず、単にZIPファイルを解凍して任意のディレクトリに配置し、環境変数を設定することで使用します。

そのため、Instant Clientのアンインストールは比較的簡単です。

  1. Oracle関連プロセスの停止: Instant Clientを使用しているアプリケーションやプロセスを終了します。
  2. 環境変数のクリーンアップ: シェル設定ファイル(例: ~/.bash_profile, ~/.zshrcなど)を開き、Instant Clientのディレクトリを含む環境変数(PATH, LD_LIBRARY_PATH, DYLD_LIBRARY_PATH, ORACLE_HOME, TNS_ADMINなど)の設定行を削除またはコメントアウトします。
  3. Instant Clientディレクトリの削除: Instant Clientを展開したディレクトリ(例: ~/oracle/instantclient_19_8)をゴミ箱に入れるか、rm -rfコマンドで削除します。

もし、OUIを使用してフルクライアントをMacにインストールしている場合は、Linux/Unix版の手順に準じて、deinstallツールを使用するか手動でアンインストールする必要があります。ただし、Macでのフルクライアントの利用は一般的ではありません。

5. アンインストール後の確認

アンインストール作業が完了したら、システムからOracle Clientが適切に削除されたかを確認することが重要です。

  1. Oracle関連プロセス/サービスの確認:

    • Windows: タスクマネージャーでOracle関連のプロセスが起動していないか確認します。services.mscでOracle関連のサービスが停止し、無効になっているか確認します。
    • Linux/Unix: ps -ef | grep oracleなどでOracle関連のプロセスが実行されていないか確認します。
  2. Oracle Homeディレクトリの存在確認:

    • ファイルエクスプローラー(Windows)やlsコマンド(Linux/Unix)で、アンインストール対象のOracle Homeディレクトリが削除されていることを確認します。
  3. 環境変数の確認:

    • Windows: システムの環境変数設定を開き、PATHなどの変数からOracle Clientのパスが削除されていることを確認します。新しいコマンドプロンプトを開き、echo %PATH%で確認します。
    • Linux/Unix: 新しいターミナルセッションを開き、echo $PATHecho $ORACLE_HOMEecho $TNS_ADMINなどで、Oracle関連の環境変数が設定されていないか、あるいは正しく修正されているか確認します。シェルの再起動やログインし直しが必要な場合があります。
  4. レジストリの確認(Windows、手動アンインストールの場合):

    • regedit.exeで、手動で削除したレジストリキー(特にHKEY_LOCAL_MACHINE\SOFTWARE\ORACLE以下)が削除されているか、あるいは他のOracle製品に影響なく適切に編集されているか、見た目で確認します。ただし、レジストリの完璧なクリーンアップを手動で行うのは非常に困難です。
  5. コマンドの実行確認:

    • コマンドプロンプトまたはターミナルを開き、sqlplus, tnsping, lsnrctl(リスナーはClientには通常ないが)などのOracle Clientコマンドを実行してみます。パスが通っていれば「コマンドが見つかりません」のようなエラーが表示されるはずです。もしOracle Clientが起動してしまう場合は、まだどこかにパスが残っているか、完全に削除されていない可能性があります。

これらの確認を行い、システムからOracle Clientの痕跡が概ね消えていることを確認できれば、アンインストールは成功したと言えます。ただし、公式ツールを使用した場合でも、すべてのファイルやレジストリ情報が完全に削除されるわけではないことを理解しておきましょう。重要なのは、その後のシステムの安定性や他のソフトウェアのインストールに支障が出ないレベルでクリーンアップされていることです。

6. トラブルシューティング

Oracle Clientのアンインストール中に発生しうる一般的な問題とその解決策について説明します。

6.1. OUI/deinstallツールが起動しない、またはエラーで終了する

  • 権限不足: OUIやdeinstallツールは管理者権限で実行する必要があります。Windowsでは「管理者として実行」、Linux/Unixではrootユーザーまたはsudoを使用しているか確認してください。
  • Javaの問題: OUIやdeinstallツールはJavaで動作します。システムに適切なバージョンのJava Runtime Environment (JRE) がインストールされているか確認してください。Oracle製品に含まれるJREを使用する場合もありますが、外部のJREが必要な場合もあります。環境変数JAVA_HOMEPATHの設定を確認することも役立ちます。
  • 他のOracleプロセスが実行中: アンインストール対象のOracle Homeに関連するプロセスやサービスが実行中の場合、ツールが正常に動作しないことがあります。アンインストール前の準備で説明したように、すべてのOracle関連プロセス/サービスを停止してください。
  • ディスク容量不足: アンインストール作業には一時ファイルなどが必要となる場合があります。ディスクに十分な空き容量があるか確認してください。
  • Central Inventoryの破損: OUIやdeinstallツールはCentral Inventoryの情報に依存しています。この情報が破損している場合、ツールが正常に動作しないことがあります。Inventoryの情報を手動で修復するのは非常に困難でリスクが高い作業です。もし他のOracle製品がインストールされておらず、アンインストール対象のOracle Clientが唯一のOracle製品であれば、Central Inventoryディレクトリ(Windows: C:\Program Files\Oracle\Inventory, Linux/Unix: /etc/oraInst.locで指定された場所)を削除してからdeinstallツールを-homeオプションで実行することを試せる場合があります。ただし、これは最終手段であり、他のOracle製品がある場合は絶対に行わないでください。
  • ツール自体の破損: OUIやdeinstallツールがインストールディレクトリ内で破損している可能性があります。インストールメディアから正常なツールをコピーして使用するか、Oracle Supportから最新のdeinstallツールをダウンロードして使用してみてください。
  • ログファイルの確認: OUIやdeinstallツールは実行ログを出力します。これらのログファイル(通常、ツールを実行したディレクトリやユーザーのホームディレクトリ以下のログディレクトリに作成されます)を確認することで、エラーの詳細や原因を特定できる場合があります。

6.2. 特定のファイルやディレクトリが削除できない

  • ファイルが使用中: アンインストール対象のファイルやディレクトリが、まだ実行中のプロセスによってロックされている可能性があります。すべてのOracle関連プロセスやサービスが停止しているか再度確認し、必要であればシステムを再起動してから削除を試みてください。Windowsでは、どのプロセスがファイルを使用しているかを確認できるツール(例: Process Explorer)を使用することも有効です。
  • 権限不足: ファイルやディレクトリを削除する権限がない可能性があります。管理者権限を持つユーザーで削除を実行してください。Linux/Unixでは、ファイルの所有者やパーミッションを確認し、必要であればchownchmodコマンドで修正するか、rootユーザーでrm -rfコマンドを使用します(ただしrootでの削除は慎重に)。

6.3. 環境変数からOracleのパスが消えない

  • 設定ファイルの誤り: シェル設定ファイル(.bash_profileなど)やシステムの環境変数設定で、Oracle Clientのパスが正しく削除または修正されていない可能性があります。設定ファイルを再度確認し、修正してください。
  • 新しいセッションの開始: 環境変数の変更は、通常、新しいコマンドプロンプトやターミナルセッションを開いたときに反映されます。設定を変更したウィンドウではなく、新しいウィンドウで確認してください。ログインし直しやシステムの再起動が必要な場合もあります。
  • 複数の設定場所: 環境変数は複数の場所(ユーザー設定、システム設定、ログインスクリプトなど)で設定されている可能性があります。すべての関連する場所を確認してください。

6.4. サービス一覧(Windows)に残っている

  • deinstallツールはサービスの削除も行いますが、まれにエントリが残ることがあります。services.mscでサービスのスタートアップの種類を「無効」に設定しておけば、起動時に問題になることは少ないですが、完全に削除したい場合はレジストリエディターでHKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Servicesキー以下の該当するサービスのエントリを慎重に削除する必要があります(前述の「手動アンインストール」のセクションを参照)。

6.5. 手動アンインストール後にシステムがおかしくなった

  • システムの復元ポイントからの復旧(Windows): アンインストール前に復元ポイントを作成している場合は、それを使用してシステムをアンインストール前の状態に戻すことを試みてください。
  • レジストリクリーナーの使用: 市販またはフリーのレジストリクリーナーソフトウェアを使用して、残存する無効なレジストリエントリを検出・削除することを検討できます。ただし、レジストリクリーナーは誤って必要なエントリを削除してしまうリスクも伴います。使用する場合は、必ずレジストリのバックアップを取ってから、慎重に使用してください。信頼性の高いソフトウェアを選ぶことが重要です。
  • Oracle Supportへの問い合わせ: My Oracle Support (MOS) のナレッジベースで類似の問題や解決策を探すか、Oracleサポートに問い合わせてください。ただし、手動アンインストールはサポート対象外となる可能性があります。

7. バージョンごとの注意点

Oracle Clientのアンインストール方法は、バージョンによって多少の違いがあります。

  • Oracle Universal Installer (OUI): 10g以降のバージョンではOUIが標準的なインストーラーであり、アンインストールツールとしても機能します。古いバージョン(9iなど)ではOUIのバージョンも古く、インターフェースや手順が異なる場合があります。
  • deinstallツール: 11g R2で導入され、それ以降のバージョン(12c, 18c, 19c, 21cなど)で改良されています。11g R2より前のバージョンでは、deinstallツールは提供されていないか、機能が限定的です。古いバージョンをアンインストールする場合は、そのバージョンに対応したOUIを使用するか、手動でのクリーンアップが必要になる場合があります。
  • Instant Client: ほとんどのバージョンで提供されており、アンインストール方法は基本的に同じ(ディレクトリ削除と環境変数修正)です。

特定のバージョンに関する詳細な情報は、そのバージョンのOracle公式ドキュメントを参照することをお勧めします。

8. 再インストール時の注意点

Oracle Clientを一度アンインストールした後、同じバージョンまたは新しいバージョンを再インストールする場合、以下の点に注意が必要です。

  • クリーンな状態からのインストール: 以前のアンインストールが不完全だった場合、残存するファイルやレジストリ情報が新しいインストールの妨げとなることがあります。可能な限りOUIまたはdeinstallツールでクリーンにアンインストールし、システムがクリーンな状態であることを確認してから再インストールを開始してください。
  • インストールパス: 以前と同じディレクトリパスに再インストールすることも可能ですが、以前の問題を引き継がないためにも、可能であれば以前とは異なる新しいディレクトリパスにインストールすることを検討しても良いでしょう。
  • Central Inventory: 他のOracle製品がインストールされているシステムでClientを再インストールする場合、既存のCentral Inventoryに登録されることになります。Inventoryが破損していないことを確認してください。

9. まとめ

Oracle Clientのアンインストールは、システムに深く関連する作業であり、慎重に進める必要があります。この記事では、WindowsおよびLinux/Unix環境におけるアンインストール方法を詳細に解説しました。

最も安全で推奨される方法は、Oracle公式のツールであるOracle Universal Installer (OUI) またはdeinstallツールを使用することです。 これらのツールは、Oracleのインストール構造を理解しており、依存関係を考慮しながら必要なファイルを削除し、システム設定をクリーンアップしてくれます。特にdeinstallツールは、OUIが使用できない場合や自動化したい場合に非常に強力な選択肢となります。

手動によるアンインストールは、これらの公式ツールが全く使用できない場合の最終手段としてのみ検討してください。 手動アンインストールは複雑でリスクが高く、誤った操作はシステムに深刻なダメージを与える可能性があります。手動で作業を行う場合は、事前のバックアップとシステムの復元ポイントの作成が必須であり、細心の注意を払う必要があります。

アンインストール作業を開始する前に、実行中のOracle関連プロセスやサービスを停止し、重要な構成ファイルやデータのバックアップを取るなどの準備を必ず行ってください。また、アンインストール後には、関連するファイルや環境変数が適切にクリーンアップされたかを確認しましょう。

もしアンインストール中に問題が発生した場合は、エラーメッセージを確認し、この記事のトラブルシューティングセクションやOracleの公式ドキュメントを参照してください。不明な点が多い場合や、システムへの影響が大きい可能性がある場合は、自己判断で作業を進めず、Oracleのサポートに問い合わせることも検討してください。

この記事が、Oracle Clientのアンインストールを安全かつ確実に行うための一助となれば幸いです。正確な手順でアンインストールを実行し、システムを健全な状態に保ちましょう。

コメントする

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

上部へスクロール