2019.4.30
2020.1.7

Oracle Database 12cR2のアンインストール

Oracle Databaseのアンインストールはインストーラーからできると思わせておいて、バッチファイルを実行して対話形式で実行しないとアンインストールできないことを最近知りました。

また、それだけでなく、エクスプローラーからフォルダを削除したり、レジストリファイルからOracleに関連したものを削除したりと、やらなければいけないことが多いので、忘れないようにメモしておきます。

なお、環境はWindows 10 Pro、アンインストールするOracleは12cR2です。

目次

  • サービスの停止
  • アンインストール
  • フォルダの削除
  • レジストリファイルの修正
  • アンインストールの失敗でサービスが残ってしまった場合の削除方法
  • 参考リンク

サービスの停止

まず、Oracle データベースをアンインストールする前に関連するサービスを停止します。

Windowsの検索ボックスに「サービス」と入力し、

検索にマッチしたWIndowsサービスを起動します。

一覧の「Oracle~」と名の付くサービスを一つ一つ停止させていきます。ただし、私の場合、「OracleServiceORCL」は実行させておかないと、次のアンインストールで処理が止まってしまったので、それだけは実行中にしておきました。

アンインストール

続いて、Oracleデータベースのアンインストールですが、Windowsの検索ボックスに「Universal Installer」と入力します。

検索にマッチしたアプリをクリックすると、しばらくして、インストーラーが立ち上がります。

画面上の「製品のアンインストール」を選択すると、アンインストールするOracle製品の選択画面が表示されるので、削除したい製品を選択します。

選択後に「削除」ボタンを押すと、指定されたパスにあるアンインストール用のバッチを実行してほしいという警告が表示されます。

削除すべきOracleホームのパスが分かっているなら上記の手順は不要ですが、複数のOracleデータベースをインストールしていた場合、どれがどれなのかややこしくなるので、少しでも不安があるなら、確認した方がいいと思います。

で、エクスプローラーで指定されたフォルダに移動後、deinstall.batというファイルを右クリックして「管理者として実行」を選択します。

バッチファイルを実行すると、コマンドプロンプトが開き、対話形式でのアンインストールが開始されます。

以下、私がアンインストール時に設定した内容になります。

※ ()内は選択項目、[]内は未入力時のデフォルト

  • 構成解除するすべての単一インスタンス・リスナーを指定してください。すべてを選択解除するには(.)を入力します。[LISTENER]:
     ⇒ .
  • 検出されたリスナー・リスト[LISTENER]の少なくとも1つの~~~続行しますか。(y|n)[n]:
     ⇒ y
  • このOracleホームで構成されているデータベース名のリストを指定してください[ORCL]:
     ⇒ 何も入力せずにEnter
  • データベースORCLの詳細は自動的に検出されました。ORCLデータベースの詳細を変更しますか。[n]:
     ⇒ y
  • このデータベースのタイプを指定してください。(1.単一インスタンス・データベース|2.Oracle Restart対応のデータベース)[1]:
     ⇒ 1
  • データベースの診断先の場所を指定してください:
     ⇒ 何も入力せずにEnter
  • データベースによって使用される記憶域タイプを指定してください(ASM|FS)[FS]:
     ⇒ FS
  • 共有ファイルシステムにデータベース・ファイルが存在する場合、~~~リストを指定できます[C:\APP\EXAMPLE\VIRTUAL\ORADATA\ORCL]:
     ⇒ 何も入力せずにEnter
  • 高速リカバリ領域がファイルシステムで構成されている場合、~~~これが削除されます。[]::
     ⇒ 何も入力せずにEnter
  • データベースのspfileの場所を指定してください[C:\APP\EXAMPLE\VIRTUAL\PRODUCT\12.2.0\~~]::
     ⇒ 何も入力せずにEnter
  • データベース・アーカイブ・モードが有効化どうかを指定します。(y|n)[n]:
     ⇒ y
  • CCRチェックが終了しました。続行しますか(y|n)[n]:
     ⇒ y

最後の続行しますか、で「y」を選択すると、Oracleデータベースのアンインストールが始まります。

しばらくしてアンインストールが完了すると、自動でコマンドプロンプトが閉じます。

フォルダの削除

アンインストールが完了したら、アンインストール後も残ってしまっているフォルダを削除します。

削除するフォルダは以下の通り。

  • C:\app

他の人のアンインストール記事を確認すると、「C:\Program Files\Oracle」も手動で削除している場合があるので、そちらにフォルダが残っている場合はこれも削除してください。私の場合はフォルダが見当たりませんでした。

レジストリファイルの修正

最後にレジストリファイルを修正します。

検索ボックスに「regedit」と入力してレジストリエディタを検索します。

regeditを起動したら、以下のOracleに関連するものを削除していきます。

  • HKEY_CLASSES_ROOT配下の「Oracle、Oraで始まるもの」
  • HKEY_LOCAL_MACHINE\SOFTWARE配下の「ORACLE」

インストール時の内容によって削除するものが違うようなので、詳しくはこちらを参照してください。

最後にPCを再起動したらアンインストール完了です。

アンインストールの失敗でサービスが残ってしまった場合の削除方法

自宅のマシンで何度かOracleのインストールとアンインストールを繰り返してみたのですが、時々、失敗したりして、Oracleのサービスが残ったままになっていることがありました。

原因は不明でしたが、以下は、手動でサービスを削除する方法です。

コマンドプロンプトまたはWindows PowerShellのどちらかを立ち上げて、以下のコマンドを実行します。


sc.exe delete サービス名(OracleRemExecServiceV2、OracleServiceORCLなど)

[SC]DeleteService SUCCESS の結果が返ってくれば削除成功です。

参考リンク

Oracle】関連記事