ヘッダーをスキップ
Oracle Databaseインストレーション・ガイド
11gリリース1(11.1) for Linux
E05714-04
  目次
目次
索引
索引

戻る
戻る
 
次へ
次へ
 

6 Oracleソフトウェアの削除

この章では、Oracleホーム・ディレクトリからすべてのOracleのデータベース、インスタンスおよびソフトウェアを完全に削除する方法について説明します。内容は次のとおりです。


関連項目:

Oracle RACインストールを削除する場合、詳細はOracle Clusterwareのインストレーション・ガイドおよびOracle Real Application Clustersのインストレーション・ガイドを参照してください。

個別の製品を削除する場合、要件や制限は製品固有のドキュメントを確認してください。


6.1 概要

Oracleホーム・ディレクトリからすべてのOracleデータベース、インスタンスおよびソフトウェアを完全に削除する手順は、次を実行する必要があります。

6.2 すべてのインスタンスの識別

削除するOracleホームに関連付けられているすべてのインスタンスを識別するには、次のコマンドを入力します。

$ more /etc/oratab

このコマンドの出力には、次のようなエントリが含まれています。

+ASM:/u01/app/oracle/product/11.1.0/db_1:N
CUST:/u01/app/oracle/product/11.1.0/db_1:N

これらのエントリは、+ASM自動ストレージ管理インスタンスとCUST Oracleデータベース・インスタンスが/u01/app/oracle/product/11.1.0/db_1 Oracleホーム・ディレクトリに関連付けられていることを示します。

6.3 Oracle Configuration Managerの削除

Oracle Configuration Managerをアンインストールする手順は、次のとおりです。

  1. $ORACLE_HOMEディレクトリにデータベースが含まれている場合は、次のスクリプトを実行してOracle Configuration Managerユーザーと関連オブジェクトをデータベースから削除します。

    SQL> $ORACLE_HOME/ccr/admin/scripts/dropocm.sql
    
  2. データベースがOracle E-Business Suiteのリポジトリである場合は、SYSDBAユーザーとしてデータベースにログインし、次のスクリプトを実行してデータベースから余分なオブジェクトを削除します。

    $ORACLE_HOME/ccr/admin/scripts/ebs_dropccr.sql Oracle_Applications_User
    
  3. データベースがOracle Grid Controlのリポジトリである場合は、SYSMANユーザーとしてデータベースにログインし、次のスクリプトを実行してデータベースから余分なオブジェクトを削除します。

    $ORACLE_HOME/ccr/admin/scripts/dropemrep_collect.sql
    
  4. スケジューラを停止し、サービスまたはcrontabエントリを削除するには、次のコマンドを入力します。

    $ORACLE_HOME/ccr/bin/deployPackages -d $ORACLE_HOME/ccr/inventory/core.jar
    
  5. 次のコマンドを入力し、ccrディレクトリを削除します。

    $ rm -rf $ORACLE_HOME/ccr
    

    Oracle Configuration Managerが正常にアンインストールされました。

6.4 データベースからのOracle Application Expressの削除

この項では、データベースを削除せずに、Oracle Application Expressのスキーマ、シノニム、およびユーザーをデータベースから削除する方法を説明します。データベースを削除する場合は、次の手順を実行する必要はありません。

Oracle Universal Installerを使用してOracleホームからOracle Application Expressを削除した後、データベースからOracle Application Expressのコンポーネントを削除できます。次の手順を実行します。


注意:

データベースを以前のリリースからアップグレードして、Oracle Application Expressの以前のリリースを使用する場合は、次の手順を実行しないでください。

  1. 次のようにSQL*Plusを使用して、権限を持つユーザーSYSとしてデータベースに接続します。

    $ $ORACLE_HOME/bin/sqlplus
    SQL> CONNECT SYS as SYSDBA
    Enter password: SYS_password
    
  2. 次のコマンドを実行します。

    SQL> ALTER SESSION SET CURRENT_SCHEMA = FLOWS_030000;
    SQL> EXEC wwv_flow_upgrade.drop_public_synonyms;
    SQL> ALTER SESSION SET CURRENT_SCHEMA = SYS;
    SQL> DROP USER FLOWS_030000 CASCADE;
    SQL> DROP USER flows_files CASCADE;
    SQL> DROP USER apex_public_user CASCADE;
    

6.5 Oracle Databaseの削除

Oracle Databaseソフトウェアを完全に削除するには、インストールされているすべてのデータベースを削除する必要があります。Oracleデータベースを削除する手順は、次のとおりです。


注意:

Oracleデータベースを削除すると、データベース内のすべてのデータが削除されます。データを保存する場合は、削除する前にデータベースをバックアップしてください。

  1. oracleユーザーとしてログインします。

    $ su - oracle
    
  2. 削除するデータベースの環境を設定するには、oraenvスクリプトまたはcoraenvスクリプトを実行してください。スクリプトの実行例は次のとおりです。

    • Bourne、Bash、またはKornシェルの場合:

      $ . /usr/local/bin/oraenv
      
    • Cシェルの場合:

      % source /usr/local/bin/coraenv
      
  3. プロンプトで、削除するデータベースのSIDを入力します。

  4. Database Configuration Assistantを起動します。

    $ dbca
    

    ようこそウィンドウが表示されます。

  5. 「次へ」をクリックします。

    操作ウィンドウが表示されます。

  6. 「データベースの削除」を選択し、「次へ」をクリックします。

  7. 削除するデータベースを選択して「終了」をクリックします。

  8. 表示されるウィンドウで、データベースの削除を確認します。

  9. Database Configuration Assistantがデータベースを削除すると、別の操作を実行するかどうかのプロンプトが表示されます。「はい」をクリックすると「操作」画面に戻ります。「いいえ」をクリックすると、Database Configuration Assistantを終了します。別のデータベースを削除する場合、「はい」をクリックし、手順6から8を繰り返します。


注意:

Oracleデータベースのインストールは、Oracleデータベースの削除を実行するのと同じOracle Universal Installerセッションからは実行できません。つまり、Oracle Universal Installerを使用してOracleデータベースを削除し、別のOracleデータベースをインストールする場合、Oracle Universal Installerの新規セッションを開始する必要があります。

6.6 自動ストレージ管理インスタンスの削除

Oracleデータベース・ソフトウェアを完全に削除するには、Oracleホームで実行中のすべての自動ストレージ管理インスタンスも削除する必要があります。自動ストレージ管理インスタンスを削除する手順は、次のとおりです。

  1. 必要に応じて、oracleユーザーとしてログインします。

    $ su - oracle
    
  2. 削除する自動ストレージ管理インスタンスの環境を設定するには、oraenvスクリプトまたはcoraenvスクリプトを実行してください。スクリプトの実行例は次のとおりです。

    • Bourne、Bash、またはKornシェルの場合:

      $ . /usr/local/bin/oraenv
      
    • Cシェルの場合:

      $ source /usr/local/bin/coraenv
      
  3. プロンプトで、削除する自動ストレージ管理インスタンスのSIDを入力します。

  4. SYSユーザーとして自動ストレージ管理インスタンスに接続します。

    $ $ORACLE_HOME/bin/sqlplus
    SQL> CONNECT SYS as SYSASM
    Enter password: SYS_password
    
  5. 次のコマンドを入力して、自動ストレージ管理インスタンスを使用中のOracleデータベース・インスタンスがあるかどうかを判断します。

    SQL> SELECT INSTANCE_NAME FROM V$ASM_CLIENT;
    

    このコマンドを実行すると、この自動ストレージ管理インスタンスを使用中のデータベース・インスタンスがすべて表示されます。


    注意:

    このコマンドで表示されるのは、実行中のデータベース・インスタンスのみです。この自動ストレージ管理インスタンスには、実行中でない他のインスタンスが関連付けられている可能性があります。

    このOracleホームからデータベースを削除しても、このコマンドの出力にこの自動ストレージ管理インスタンスが他のOracleホームにあるデータベース・インスタンスをサポートしていることが示される場合は、自動ストレージ管理インスタンスまたはOracleホームを削除しないでください。


  6. 自動ストレージ管理インスタンスにデータベース・インスタンスが関連付けられていない場合は、このインスタンスに関連付けられているディスク・グループを削除します。


    注意:

    自動ストレージ管理ディスク・グループを削除すると、ディスク・デバイスが必要に応じて他の自動ストレージ管理インスタンスで使用可能になります。ただし、そのディスク・グループのデータはすべて失われます。ディスク・グループを削除する前に、そのデータを必要とする他のデータベース・インスタンスが存在しないことを確認してください。

    1. 自動ストレージ管理インスタンスに関連付けられているディスク・グループを識別します。

      SQL> SELECT NAME FROM V$ASM_DISKGROUP;
      
    2. 削除するディスク・グループごとに、次のようなコマンドを入力します。

      SQL> DROP DISKGROUP name INCLUDING CONTENTS;
      
  7. 次のコマンドを入力し、自動ストレージ管理インスタンスを停止します。

    SQL> SHUTDOWN
    
  8. /etc/oratabファイルから、自動ストレージ管理インスタンスのエントリを削除します。

6.7 Oracle Cluster Synchronization Servicesの再構成

Oracle Cluster Synchronization Services(CSS)は、自動ストレージ管理インスタンスの構成時にroot.shスクリプトで構成されるデーモン・プロセスです。このプロセスは、システム起動時にはいつも起動するように構成されています。また、Oracle自動ストレージ管理インスタンスとデータベース・インスタンスが同期するために必要なプロセスです。Oracleデータベースのデータベース・ファイルの記憶域に自動ストレージ管理を使用している場合、このプロセスは実行中である必要があります。


注意:

Oracle RACがインストールされているクラスタ・システムでは、CSSデーモンはOracle Clusterwareのインストール時に構成されます。Oracle Clusterwareを実行中のシステムで、Oracle RACまたはOracle Clusterwareを削除する方法の詳細は、Oracle Real Application Clustersのインストレーション・ガイドを参照してください。

Oracle Database 11gのOracleホームを削除する前に、そのOracleホームから実行しているCSSデーモンの有無、およびシステム内のOracle Database 11gの別のOracleホームの有無を確認する必要があります。

次の各項では、それぞれのタスクの実行方法について説明します。

6.7.1 Oracle Database 11gのOracleホームの識別

Oracle Database 11gのOracleホーム・ディレクトリをすべて識別するには、次のコマンドを入力します。

$ more /etc/oratab

出力から、Oracle Database 11gがインストールされているすべてのOracleホーム・ディレクトリを識別します。Oracle Database 11gを含むOracleホームのパスは、通常、次のようになります。ただし、異なるパスの場合もあります。

/mount_point/app/oracle/product/11.1.0/db_n

Oracle Database 11gを含むOracleホーム・ディレクトリが1つのみの場合、Oracle CSSデーモン構成を削除する方法の詳細は、「Oracle CSSデーモン構成の削除」を参照してください。

Oracle Database 11gを含むOracleホーム・ディレクトリが2つ以上存在する場合、Oracle CSSデーモンの再構成の詳細は次の項を参照してください。

6.7.2 Oracle CSSデーモンの再構成

削除されないOracleホームからOracle CSSデーモンが実行されるように再構成する手順は、次のとおりです。

  1. システム上のすべてのOracleホーム・ディレクトリにおいて、すべてのOracle自動ストレージ管理インスタンスと、データベース・ファイルの記憶域に自動ストレージ管理を使用しているすべてのOracle Databaseインスタンスを停止します。

  2. ユーザーをrootに切り替えます。

  3. 次のコマンドを入力し、CSSデーモンの実行に使用されているOracleホーム・ディレクトリを識別します。

    # more /etc/oracle/ocr.loc
    

    このコマンドの出力は、次のようになります。

    ocrconfig_loc=/u01/app/oracle/product/11.1.0/db_1/cdata/ \
    localhost/local.ocr
    local_only=TRUE
    

    ocrconfig_locパラメータは、CSSデーモンが使用するOracle Cluster Registry(OCR)の位置を指定します。cdataディレクトリまでのパスは、CSSデーモンが実行されているOracleホーム・ディレクトリとなります(この例では/u01/app/oracle/product/11.1.0/db_1)。


    注意:

    local_onlyパラメータの値がFALSEの場合、このシステムにはOracle Clusterwareがインストールされています。


    関連項目:

    Oracle Real Applications ClustersまたはOracle Clusterwareを削除する方法の詳細は、Oracle Real Application Clustersのインストレーション・ガイドを参照してください。

    このOracleホーム・ディレクトリが削除対象のOracleホームでない場合は、「Oracleソフトウェアの削除」に進んでください。

  4. ディレクトリを、削除しないOracle Database 11gインストールのOracleホーム・ディレクトリに変更します。

  5. このOracleホーム・ディレクトリのパスを指定するようにORACLE_HOME環境変数を設定します。

    • Bourne、Bash、またはKornシェルの場合:

      # ORACLE_HOME=/u01/app/oracle/product/11.1.0/db_2;
      # export ORACLE_HOME
      
    • Cシェルの場合:

      # setenv ORACLE_HOME /u01/app/oracle/product/11.1.0/db_2
      
  6. 次のコマンドを入力し、CSSデーモンがこのOracleホームから実行されるよう再構成します。

    # $ORACLE_HOME/bin/localconfig reset $ORACLE_HOME
    

    このコマンドは、Oracle CSSデーモンを停止し、新しいOracleホームで再構成した後に再起動します。システムが起動すると、CSSデーモンは自動的に新しいOracleホームから起動します。

  7. 元のOracleホーム・ディレクトリを削除するには、「Oracleソフトウェアの削除」を参照してください。

6.7.3 Oracle CSSデーモン構成の削除

Oracle CSSデーモン構成を削除する手順は、次のとおりです。


注意:

他のOracle Database 11gインストールがCSSデーモン構成を必要としていないことが明確な場合のみ、削除を実行してください。

  1. このOracleホームに関連するすべてのデータベース・インスタンスまたは自動ストレージ管理インスタンスを削除します。この手順については、前項を参照してください。

  2. ユーザーをrootに切り替えます。

  3. ディレクトリを、削除するOracleホーム・ディレクトリに変更します。

  4. このOracleホーム・ディレクトリのパスを指定するようにORACLE_HOME環境変数を設定します。

    • Bourne、Bash、またはKornシェルの場合:

      # ORACLE_HOME=/u01/app/oracle/product/11.1.0/db_1
      # export ORACLE_HOME
      
    • Cシェルの場合:

      # setenv ORACLE_HOME /u01/app/oracle/product/11.1.0/db_1
      
  5. 次のコマンドを入力し、このOracleホームからCSSデーモン構成を削除します。

    # $ORACLE_HOME/bin/localconfig delete
    

    このスクリプトは、Oracle CSSデーモンを停止し、構成を削除します。システムが起動しても、CSSデーモンは起動しなくなります。

6.8 Oracleソフトウェアの削除

次の手順では、Oracle Universal Installerを使用し、OracleホームからOracleソフトウェアを削除する方法について説明します。


注意:

Oracleソフトウェアの削除には、常にOracle Universal Installerを使用してください。Oracleホーム・ディレクトリを削除する前には、必ずOracle Universal Installerを使用してソフトウェアを削除してください。

  1. 必要に応じて、oracleユーザーとしてログインします。

    $ su - oracle
    
  2. 削除するOracleホーム・ディレクトリへのパスを指定するようにORACLE_HOME環境変数を設定します。

    • Bourne、Bash、またはKornシェルの場合:

      $ ORACLE_HOME=/u01/app/oracle/product/11.1.0/db_1
      $ export ORACLE_HOME
      
    • Cシェルの場合:

      % setenv ORACLE_HOME /u01/app/oracle/product/11.1.0/db_1
      
  3. このOracleホームに関連するすべてのデータベース・インスタンスまたは自動ストレージ管理インスタンスを削除し、Oracle CSSデーモンを削除または再構成します。

    この手順については、前項を参照してください。

  4. このOracleホームで実行されているすべてのプロセスを停止します。

    プロセス名 コマンド
    Database Control $ORACLE_HOME/bin/emctl stop dbconsole
    Oracle Netリスナー $ORACLE_HOME/bin/lsnrctl stop

  5. 次のとおりOracle Universal Installerを起動します。

    $ $ORACLE_HOME/oui/bin/runInstaller
    
  6. ようこそウィンドウで、「製品の削除」をクリックします。

    「インベントリ」画面が表示され、システムにあるOracleホームがすべて示されます。

  7. 「インベントリ」画面で削除するOracleホームと製品を選択し、「削除」をクリックします。


    注意:

    Oracle JVMの削除を選択した場合、Oracle Universal InstallerはOracle Database 11gも含めOracle JVMに依存するインストール済の製品をすべて削除します。

    Oracle Universal Installerは、製品とその依存コンポーネントの削除を確認するウィンドウを表示します。

  8. 「はい」をクリックします。

    Oracle Universal Installerは、ソフトウェアの削除中にプログレス・インジケータを表示します。

  9. 「閉じる」をクリックして「インベントリ」画面を終了します。

  10. 製品が削除された後は、「取消」をクリックしてOracle Universal Installerを終了し、「はい」をクリックします。