きさま!見ているなッ!!

Oracle Database 12c R2 Enterprise Editionをアンインストールする

  • 2019-08-07
  • 2019-08-15
  • Oracle

今回は、Oracleホームに含まれている削除ツール(deinstall)を使用して、Oracle Databaseをアンインストールする手順をご紹介します。

削除ツール(deinstall)の実行だけだと残ってしまうファイル・ディレクトリについては、手動で削除しています。

環境

環境情報です。

名称バージョン情報説明
OSCentOS 7.6VirtualBoxの仮想マシン
データベースOracle Database 12c R2 Enterprise Edition 今回アンインストールするデータベース

アンインストール準備

レスポンス・ファイル作成

$ id
uid=1000(oracle) gid=54321(oinstall) groups=54321(oinstall),54322(dba),54323(oper),54324(backupdba),54325(dgdba),54326(kmdba),54330(racdba)
$ 

Oracle Databaseのアンインストールは、Oracleユーザー(ソフトウェア所有者)で実施します。

$ /u01/app/oracle/product/12.2.0/dbhome_1/deinstall/deinstall -checkonly

Checking for required files and bootstrapping ...
Please wait ...
ログの場所/home/oracle/tmp/deinstall2019-08-06_09-54-31PM/logs/

############ ORACLE DECONFIG TOOL START ############


######################### DECONFIG CHECK OPERATION START #########################
## [開始] インストールの構成確認 ##


Oracleホームの場所が存在するかどうかを確認しています /u01/app/oracle/product/12.2.0/dbhome_1
選択された削除対象のOracleホームのタイプ: Oracle単一インスタンス・データベース
選択された削除対象のOracleベース: /u01/app/oracle
中央インベントリの場所が存在するかどうかを確認しています /u01/app/oraInventory

## [終了] インストールの構成確認 ##


ネットワーク構成チェック構成START

ネットワーク構成解除トレース・ファイルの場所: /home/oracle/tmp/deinstall2019-08-06_09-54-31PM/logs/netdc_check2019-08-06_09-54-57-PM.log

構成解除するすべての単一インスタンス・リスナーを指定してください。すべてを選択解除するにはドット(.)を入力します。[LISTENER]:

ネットワーク構成チェック構成END

データベース・チェック構成START

データベース構成解除トレース・ファイルの場所: /home/oracle/tmp/deinstall2019-08-06_09-54-31PM/logs/databasedc_check2019-08-06_09-55-31-PM.log

値のリストを入力として指定する場合、セパレータとしてカンマを使用してください

このOracleホームで構成されているデータベース名のリストを指定してください [orcl]: 

###### データベース'orcl' ######

単一インスタンス・データベース
データベースの診断先の場所: /u01/app/oracle/diag/rdbms/orcl
データベースによって使用される記憶域タイプ: FS
データベース・ファイルの場所: /u01/app/oracle/oradata/ORCL,/u01/app/oracle/fast_recovery_area/orcl/ORCL/controlfile
高速リカバリ領域の場所: /u01/app/oracle/fast_recovery_area/orcl/ORCL
アーカイブ・ログ・モードが有効になっている場合、アーカイブ・ログが削除されます。
データベースのspfileの場所: /u01/app/oracle/product/12.2.0/dbhome_1/dbs/spfileorcl.ora

データベースorclの詳細は自動的に検出されました。orclデータベースの詳細を変更しますか。 [n]: 

データベース・チェック構成END
Oracle Configuration Manager check START
OCMチェック・ログ・ファイルの場所: /home/oracle/tmp/deinstall2019-08-06_09-54-31PM/logs//ocm_check1588.log
Oracle Configuration Manager check END

######################### DECONFIG CHECK OPERATION END #########################


####################### DECONFIG CHECK OPERATION SUMMARY #######################
削除対象として選択されたOracleホーム: /u01/app/oracle/product/12.2.0/dbhome_1
Oracleホームが登録されているインベントリの場所: /u01/app/oraInventory
次の単一インスタンス・リスナーが構成解除されます: LISTENER
次のデータベースが構成解除対象として選択されました: orcl
一意のデータベース名: orcl
使用済記憶域: FS
CCRの構成ステータスをチェックしています
CCRディレクトリがあるOracleホームは存在しますが、CCRが構成されていません
CCRチェックが終了しました
生成されたレスポンス・ファイルの場所: '/home/oracle/tmp/deinstall2019-08-06_09-54-31PM/response/deinstall_OraDB12Home1.rsp'
このセッションのログは/home/oracle/tmp/deinstall2019-08-06_09-54-31PM/logs/deinstall_deconfig2019-08-06_09-54-51-PM.outに書き込まれます
このセッションのすべてのエラー・メッセージは/home/oracle/tmp/deinstall2019-08-06_09-54-31PM/logs/deinstall_deconfig2019-08-06_09-54-51-PM.errに書き込まれます

############# ORACLE DECONFIG TOOL END #############

$ 

削除ツール(deinstall)を「-checkonly」パラメータで実行し、レスポンス・ファイルを作成します。途中でリスナーやデータベース名などを聞かれますが、変更しない場合は、そのまま[Enter]で進みます。

正常に終了すると、Oracleユーザーのホームディレクトリ配下に下記のようなファイルが作成されます。

今回作成されたレスポンス・ファイル
/home/oracle/tmp/deinstall2019-08-06_09-54-31PM/response/deinstall_OraDB12Home1.rsp

Oracle Databaseをアンインストールする

アンインストール

作成したレスポンス・ファイルを使用して、Oracle Databaseをアンインストールします。

$ /u01/app/oracle/product/12.2.0/dbhome_1/deinstall/deinstall -paramfile /home/oracle/tmp/deinstall2019-08-06_09-54-31PM/response/deinstall_OraDB12Home1.rsp

Checking for required files and bootstrapping ...
Please wait ...
プロパティ・ファイル/home/oracle/tmp/deinstall2019-08-06_09-54-31PM/response/deinstall_OraDB12Home1.rspを使用しています
ログの場所/home/oracle/tmp/deinstall2019-08-06_09-54-31PM/logs/

############ ORACLE DECONFIG TOOL START ############

~中略~

####################### DECONFIG CHECK OPERATION SUMMARY #######################
削除対象として選択されたOracleホーム: /u01/app/oracle/product/12.2.0/dbhome_1
Oracleホームが登録されているインベントリの場所: /u01/app/oraInventory
次の単一インスタンス・リスナーが構成解除されます: LISTENER
次のデータベースが構成解除対象として選択されました: orcl
一意のデータベース名: orcl
使用済記憶域: FS
CCRの構成ステータスをチェックしています
CCRディレクトリがあるOracleホームは存在しますが、CCRが構成されていません
CCRチェックが終了しました
続行しますか (y - はい、n - いいえ) [n]: y
このセッションのログは/home/oracle/tmp/deinstall2019-08-06_09-54-31PM/logs/deinstall_deconfig2019-08-06_10-00-02-PM.outに書き込まれます
このセッションのすべてのエラー・メッセージは/home/oracle/tmp/deinstall2019-08-06_09-54-31PM/logs/deinstall_deconfig2019-08-06_10-00-02-PM.errに書き込まれます

######################## DECONFIG CLEAN OPERATION START ########################
データベース構成解除トレース・ファイルの場所: /home/oracle/tmp/deinstall2019-08-06_09-54-31PM/logs/databasedc_clean2019-08-06_10-00-45-PM.log
データベース・クリーンアップ構成START orcl
この操作には数分かかります。
データベース・クリーンアップ構成END orcl

~中略~

######################### DECONFIG CLEAN OPERATION END #########################

####################### DECONFIG CLEAN OPERATION SUMMARY #######################
次のデータベース・インスタンスが正常に構成解除されました: orcl
次の単一インスタンス・リスナーが正常に構成解除されました: LISTENER
CCRの構成をクリーニングしています
CCRが構成されていないため、CCR構成のクリーニングをスキップしています
CCRクリーニングが終了しました
#######################################################################

############# ORACLE DECONFIG TOOL END #############

プロパティ・ファイル/home/oracle/tmp/deinstall2019-08-06_09-54-31PM/response/deinstall_OraDB12Home1.rspを使用しています
ログの場所/home/oracle/tmp/deinstall2019-08-06_09-54-31PM/logs/

############ ORACLE DEINSTALL TOOL START ############

####################### DEINSTALL CHECK OPERATION SUMMARY #######################
このセッションのログは/home/oracle/tmp/deinstall2019-08-06_09-54-31PM/logs/deinstall_deconfig2019-08-06_10-00-02-PM.outに書き込まれます
このセッションのすべてのエラー・メッセージは/home/oracle/tmp/deinstall2019-08-06_09-54-31PM/logs/deinstall_deconfig2019-08-06_10-00-02-PM.errに書き込まれます

######################## DEINSTALL CLEAN OPERATION START ########################
## [開始] 削除の準備 ##
LOCAL_NODEをtestdbに設定しています
CRS_HOMEをfalseに設定しています
oracle.installer.invPtrLocを/home/oracle/tmp/deinstall2019-08-06_09-59-55PM/oraInst.locに設定しています
oracle.installer.localをfalseに設定しています

## [終了] 削除の準備 ##

Setting the force flag to false
Setting the force flag to cleanup the Oracle Base
Oracle Universal Installerクリーンアップの開始

Oracleホーム'/u01/app/oracle/product/12.2.0/dbhome_1'をローカル・ノードの中央インベントリからデタッチします : 終了

ローカル・ノードのディレクトリ'/u01/app/oracle/product/12.2.0/dbhome_1'を削除します : 終了

ローカル・ノードのディレクトリ'/u01/app/oraInventory'を削除します : 失敗しました <<<<

ディレクトリ'/u01/app/oracle'の削除に失敗しました。ユーザーに削除する権限がないか、ディレクトリが使用中です。
ローカル・ノードのディレクトリ'/u01/app/oracle'を削除します : 失敗しました <<<<

Oracle Universal Installerのクリーンアップは終了しましたがエラーがあります。

Oracle Universal Installerクリーンアップの終了


## [開始] Oracleインストール・クリーンアップ ##


## [終了] Oracleインストール・クリーンアップ ##


######################### DEINSTALL CLEAN OPERATION END #########################


####################### DEINSTALL CLEAN OPERATION SUMMARY #######################
Oracleホーム'/u01/app/oracle/product/12.2.0/dbhome_1'がローカル・ノードの中央インベントリから正常にデタッチされました。
ローカル・ノードのディレクトリ'/u01/app/oracle/product/12.2.0/dbhome_1'が正常に削除されました。
ローカル・ノードのディレクトリ'/u01/app/oraInventory'の削除に失敗しました。
ローカル・ノードのディレクトリ'/u01/app/oracle'の削除に失敗しました。
Oracle Universal Installerのクリーンアップは終了しましたがエラーがあります。


セッション終了時にノード'testdb'でrootとして'rm -r /etc/oraInst.loc'を実行します。

セッション終了時に、ノード'testdb'でルートとして'rm -r /opt/ORCLfmap'を実行してください。
セッション終了時に、ノード'testdb'でルートとして'rm -r /etc/oratab'を実行してください。
ノード'testdb'上の'/u01/app/oracle'の権限およびコンテンツを確認します。
'/u01/app/oracle'に関連付けられたOracleホームがない場合、'/u01/app/oracle'およびそのコンテンツを手動で削除します。
Oracle削除ツールによって一時ディレクトリが正常にクリーンアップされました。
#######################################################################


############# ORACLE DEINSTALL TOOL END #############

$ 

削除ツール(deinstall)に「-paramfile」パラメータでレスポンス・ファイルを指定し、実行します。先程と同様に、リスナーやデータベース名などを聞かれますが、変更しない場合は、そのまま[Enter]で進みます。

「続行しますか (y – はい、n – いいえ) [n]: 」

上記に「y」で回答すると、アンインストールが始まります。終了するまで、しばらく待ちます。

不要ファイル・ディレクトリ削除

削除ツール(deinstall)の処理が終了すると、実行ログにファイル・ディレクトリの手動削除指示が出ているのが確認できますね。

削除に失敗しているディレクトリもあるので、手動で削除していきます。

# id
uid=0(root) gid=0(root) groups=0(root)
# 
# rm -rf /etc/oraInst.loc
# rm -rf /opt/ORCLfmap
# rm -rf /etc/oratab
# rm -rf /u01
# 

削除は、rootユーザーで実行します。今回は、まとめて削除している部分もありますが、きちんと確認してから削除してくださいね。

まとめ

Oracleホームに含まれている削除ツール(deinstall)を使用することで、難なくアンインストールできたと思います。

Oracleが起動中でも削除ツール(deinstall)によって停止され、アンインストールされますが、作業前に停止しておくほうがスマートですね。

Oracle Database 12c R2 Enterprise Editionをアンインストールする
最新情報をチェックしよう!