ヘッダーをスキップ
Oracle® Databaseアップグレード・ガイド
11g リリース2(11.2)
B56310-08
  目次へ移動
目次
索引へ移動
索引

前
 
次
 

3 新しいリリースのOracle Databaseへのアップグレード

新しいリリースのOracle Databaseへのアップグレードは、データベースのメンテナンスおよび管理の基本部分です。Oracleでは、Database Upgrade Assistant、専用スクリプトおよび専用ツールを提供することで、アップグレード処理を支援し、多くの手順を自動化しています。この章では、重要な情報と要件について説明し、データベースをOracle Database 11gリリース2(11.2)にアップグレードする処理の手引きを示します。

この章の内容は次のとおりです。


注意:

古いOracleソフトウェアを保持している場合、古いソフトウェアを使用してアップグレードしたデータベースを起動しないでください。新しいOracle Databaseインストールの実行可能ファイルでのみデータベースを起動してください。


Oracle Databaseをアップグレードする場合のシステムの考慮点および要件

新しいリリースのOracle Databaseにアップグレードする場合は、通常、新しいシステム要件または変更されたシステム要件があります。次の項では、Oracle Databaseのアップグレードを開始する前に実行する各種チェックや考慮点について説明します。


重要:

このリリースにアップグレードするには、既存のOracleホームにパッチ・セットを適用するのではなく、新しいOracleホームにOracle Grid InfrastructureとOracle Databaseソフトウェアをインストールする必要があります。これはアウトオブプレース・アップグレードと呼ばれ、パッチ・セットが常にインプレースでインストールされるOracle Databaseの以前のリリースのパッチ・セット・リリースとは異なります、


注意:

Oracle Grid Infrastructureではインプレース・アップグレードがサポートされていません。新しいGrid Infrastructureホームへのアウトオブプレース・アップグレードのみがサポートされています。


関連項目:

  • Oracle Net Servicesのアップグレードに関する考慮点については、『Oracle Database Net Services管理者ガイド』を参照してください。

  • アップグレードの準備の詳細は、ご使用のオペレーティング・システム固有のOracleマニュアルを参照してください。

  • ローリング・アップグレードの詳細は、「Oracle Databaseのローリング・アップグレードの概要」を参照してください。


新しいOracle Database環境への既存のデータ・ファイルの再配置

古いOracle環境を削除する前に、古いOracle環境にあるデータ・ファイルをすべて新しいOracle Database環境に再配置する必要があります。

データ・ファイルを新しいOracle Database環境に再配置するには、次の手順を実行します。 

  • Database Upgrade Assistant(DBUA)を使用し、アップグレード中に「データベース・ファイルの移動」オプションを選択します。


関連項目:

詳細は、「Linux、UNIXおよびWindowsでのDatabase Upgrade Assistantを使用したアップグレード」を参照してください。

手動でアップグレードを行う場合は、『Oracle Database管理者ガイド』でデータ・ファイルの再配置の詳細を参照してください。


デフォルトでインストールされていないPL/SQLパッケージのアップグレードの概要

現在のリリースにアップグレードしようとしているデータベース上にすでにインストールされているパッケージは、自動的にアップグレードされない場合があります。パッケージが現在のリリースで使用可能かどうかを個別に確認し、そのパッケージを再インストールして最新バージョンにする必要があります。

Oracle Grid InfrastructureとともにインストールされるOracle ASMのアップグレードの概要

Oracle ASMは、Oracle Grid Infrastructureのアップグレードの一部としてアップグレードされます。Oracle Grid Infrastuctureをアップグレードしないと、Oracle ASMはアップグレードできません。


関連項目:


Oracle ClusterwareおよびOracle ASMインスタンスのアップグレードに関する考慮点

Oracle Database 11gリリース2(11.2.0.1)以上では、Oracle ClusterwareとOracle Real Application Clusters(Oracle RAC)を既存のインストールとは別の新しいホームにインストールする必要があります。これにより、クラスタ内のノードのアップグレードに必要な停止時間が短縮され、企業内のクラスタのプロビジョニングが容易になります。クラスタのアップグレードに必要な計画停止時間を短縮することで、可用性サービス・レベルを満たし、企業全体への標準インストールを簡単に行うことができます。

Oracle ClusterwareとOracle ASMインスタンスのアップグレードに関する考慮点を次に示します。

  • Oracle Database 11gより前のリリースでは、Oracleユーザー(通常、oracle)がすべてのOracleソフトウェア・インストールを所有しているか、またはOracle Databaseソフトウェアはoracleが所有し、Oracle Clusterwareソフトウェアは別のユーザー(通常、crsuser)が所有していました。

  • Oracle Database 11g以上では、リリース10gのCluster Ready Services(CRS)ソフトウェアの所有者として指定されたユーザー・アカウントがOracle Clusterware 11gのアップグレードを実行する必要があります。このアップグレードを実行するユーザー・アカウントは、以前のリリース(つまり、リリース11.2より前のリリース)のASMホームを所有するユーザーでもある必要があります。11.2より前のASMホームの所有者が異なる場合、アップグレードを実行する前に所有者アカウントを変更する必要があります。

  • Oracle Database 11gリリース2(11.2)では、Oracle Clusterwareソフトウェアは、Oracle Grid Infrastructureホーム内の新しいホームの場所にアップグレードする必要があります。また、同じOracle Grid InfrastructureホームでOracle ASMおよびOracle Clusterware(単一インスタンス・データベースの場合はOracle Restart)を実行する必要があります。Oracle Clusterwareをリリース11.2にアップグレードするとき、OUIによって自動的にOracle ASM Cluster Assistant(ASMCA)がコールされ、Oracle Grid Infrastructureホームへのアップグレードが実行されます。

  • Oracle Databaseリリース11.2.0.3にアップグレードするには、既存のOracleホームではなく、新しいOracleホームにOracle Grid InfrastructureとOracle Databaseソフトウェアをインストールする必要があります。

  • 単一インスタンス構成の場合は、Oracle Grid InfrastructureホームからOracle ASMおよびOracle Restartを実行し、同じホームからCluster Synchronization Services(CSS)デーモンを実行します。このため、Oracle ASMおよびCSSは、Oracle Database 11gリリース2(11.2)に同時にアップグレードされます。

  • Oracle Databaseリリース11.1以前のリリースでは、構成にOracle ASMが含まれていない場合は、CSSデーモンを停止し、deleteオプションを指定してlocalconfigコマンドを実行することによって、システムからCSSサービスを削除する必要があります。次に例を示します。

    ORACLE_HOME/bin/localconfig delete
    
  • Oracle ASMディスク・グループのデータベース互換性属性が、init.oraで設定されている互換性パラメータと同じであることを確認する必要があります。

現在のデータベース構成にOracle ASMが含まれているかどうかの確認

構成にOracle ASMが含まれているかどうかが不明な場合は、データベース・インスタンスで次のSQL文を発行します。

select count(*) from v$asm_client where status = 'CONNECTED';

この文によって1つ以上の行が戻された場合は、現在データベースでOracle ASMディスク・グループが使用されています。

Oracle Real Application Clusters(Oracle RAC)データベースのアップグレードの概要

Database Upgrade Assistant(DBUA)を使用して、既存のOracle RACデータベースをOracle Databaseの現行リリースにアップグレードできます。DBUAの指示に従ってアップグレード処理を実行し、新しいリリースのデータベースを構成します。DBUAでは、アップグレード処理が自動化され、表領域、オンラインREDOログ・ファイルなどの構成オプションの適切な推奨値が提供されます。

手動でOracle RACデータベースをアップグレードする場合、ほとんどの処理はシステムの1つのノードのみで実行する必要があります。複数のノードで実行する必要がある処理については、該当する手順で示されます。

Oracle RACで時間の同期を行う場合の要件の概要

Oracle Clusterware 11gリリース2(11.2)では、Oracle RACのデプロイ時にクラスタ内のすべてのノードで時間の同期を行う必要があります。

時間の同期を行う場合は、次のオプションのいずれかを使用できます。

  • オペレーティング・システムで構成されたネットワーク・タイム・プロトコル(NTP)

  • Oracleクラスタ時刻同期化サービス


関連項目:

NTPおよびOracleクラスタ時刻同期化サービスの構成の詳細は、オペレーティング・システムの『Oracle Grid Infrastructureインストレーション・ガイド』を参照してください。

Oracle ASMを使用するOracle RACおよびデータベースのアップグレードに関する考慮点

データ・ファイルのストレージにOracle ASMを使用しているOracle RACおよびデータベースをアップグレードしている場合は、追加の制限と要件を考慮する必要があります。

  • 以前のリリースから11.2.0.3へアップグレードする場合は、ノードのサブセットを選択できません。

    新しいデータベース・リリース11.2.0.3のソフトウェアがシステム上にインストールされる前に、Oracle Grid InfrastructureをアップグレードするためのrootスクリプトによってASMCAが起動され、Oracle ASMがリリース11.2.0.3にアップグレードされます。

  • Oracle Clusterwareソフトウェアがリリース11.2.0.1にアップグレードされ、Oracle ASMで以前のリリースが実行されている場合、Oracle ASMクラスタがアップグレードされなかったことを示すエラーがDBUAにより表示されます。この場合、Oracle Databaseリリース11.2.0.3のソフトウェアがシステム上にインストールされる前に、rootスクリプトによってOracle ASM Cluster Assistant(ASMCA)が起動され、Oracle ASMがリリース11.2.0.1にアップグレードされます。

  • リリース11.2.0.1を11.2.0.3にアップグレードする場合、DBUAでは、Oracle Clusterwareスタックが起動状態である必要があります。DBUAによってOracle Clusterwareスタックがローカル・ノードで停止状態であると認識されると、ローカル・ノードでスタックを起動するためにコマンドを実行する必要があることを示すエラー・メッセージが表示されます。

  • DBUAでは、11.2.0.1クラスタへの単一インスタンス・データベース(SIDB)リリース11.2.0.3のインストールは許可されません。

  • DBUAによってOracle Restartが検出されると、データベースをOracle Restartに登録するかどうかを確認するページが表示されます。Oracle Restartへの登録を選択した場合、まずOracle Grid Infrastructureをリリース11.2.0.3にアップグレードするよう求めるメッセージがDBUAにより表示されます。


注意:

Oracle Restartは、以前はOracle単一インスタンスの高可用性(SIHA)と呼ばれていました。

Oracle ASMインスタンスのシステム認証のアップグレードの概要

Oracle Database 11gリリース1(11.1)以上では、SYSASM権限を使用してデータベース管理の職責とストレージ管理の職責を分離することが必要になりました。さらに、Oracle ASMおよび各データベースに対して異なるオペレーティング・システム資格証明を作成することもできるようになっています。これにより、データベース管理の職責とストレージ管理の職責をさらに厳重に分離することが可能になります。たとえば、あるノード上のOracle ASMを使用しているデータベースがn個ある場合、SYS権限を持つメンバーのオペレーティング・システム資格証明グループをn+1セット構成できます(つまり、各データベース用のSYSDBA権限を持つOSDBAグループが1つずつと、Oracle ASMインスタンス用のSYSASM権限を持つOSASMグループが1つです)。

Oracle ASMインスタンスのアップグレードに関する考慮点

Oracle ASMインスタンスを新しいOracle Database 11gリリースにアップグレードする前に、ノードのOracle ASMインスタンスに対してローカルなパスワード・ファイルに、ユーザーとパスワードの組合せを追加する必要があります。この操作には、次のSQL*Plus CREATE USER文を使用します。

CREATE USER user_name IDENTIFIED BY password;
  • Oracle ASMインスタンスのアップグレードを行っている場合にのみ、パスワード・ファイルにユーザーとパスワードの組合せを追加する必要があります。Oracle ASMをアップグレードせずに、新しいOracle Database 11gリリースにデータベースをアップグレードする場合、この手順は必要ありません。

  • Oracle Database 11gのデフォルトのセキュリティ設定が適用されている場合、パスワードは8文字以上にする必要があり、welcomeoracleなどのパスワードは使用できません。


関連項目:

  • Oracle ASMインスタンスへのアクセスの認証の詳細は、『Oracle Databaseストレージ管理者ガイド』を参照してください。

  • CREATE USERの構文の詳細は、『Oracle Database SQL言語リファレンス』を参照してください。

  • パスワード管理のガイドラインおよびセキュリティ上のその他の推奨事項については、『Oracle Databaseセキュリティ・ガイド』を参照してください。


読取り専用およびオフラインの表領域を使用したアップグレードの概要

Oracle Database 11gリリース1(11.1)以上のリリースでは前のリリースで作成されたファイル・ヘッダーを読み取ることができるため、アップグレード時にそれらに対して処理を行う必要はありません。Oracle Database 11gリリース1(11.1)より前に作成された表領域を別のプラットフォームに転送する場合は例外です。この場合は、転送前のある時点でファイル・ヘッダーを読取り/書込み両用にする必要があります。ただし、アップグレード時にこれらに対して特別な処理を行う必要はありません。

オフラインのデータ・ファイルのファイル・ヘッダーは、後でオンラインにしたときに更新され、読取り専用の表領域のファイル・ヘッダーは、アップグレード後のある時点で読取り/書込みにしたときに更新されます。他のすべての状況では、読取り専用の表領域を読取り/書込みにする必要はありません。


関連項目:

読取り専用の表領域、およびデータベース間で表領域を転送する方法の詳細は、『Oracle Database管理者ガイド』を参照してください。

スタンバイ・データベースを使用したアップグレードの概要

Oracle Data Guard構成にスタンバイ・データベースが存在する場合にOracle Databaseソフトウェアをアップグレードする方法は、『Oracle Data Guard概要および管理』を参照してください。Oracle Data Guardブローカ構成でOracle DatabaseおよびOracle Enterprise Managerソフトウェアをアップグレードまたはダウングレードする方法は、『Oracle Data Guard Broker』を参照してください。

ローリング・アップグレード時に、プライマリ・データベースおよびスタンバイ・データベースで異なるリリースのOracle Databaseソフトウェアを実行して、一度に1つずつアップグレードし、プライマリ・データベースでの停止時間を最小にすることができます。次のいずれかの方法を使用します。

  • SQL Applyおよびロジカル・スタンバイ・データベース

    Oracle Database 10gリリース1(10.1.0.3)以上では、ロジカル・スタンバイ・データベースでOracle Data Guard SQL Applyを使用して新しいOracle Database 11gリリースへのローリング・アップグレードを実行できます。たとえば、Oracle Databaseソフトウェアをリリース10.1.0.nのパッチ・セットから次のリリース10.1.0.(n+1)にアップグレードしたり、Oracle Database 10gリリース1(10.1)からOracle Database 11gリリース2(11.2)にアップグレードすることができます。

  • ローリング・アップグレード用のフィジカル・スタンバイ・データベースの使用

    このリリースから、フィジカル・スタンバイ・データベースは、ロジカル・スタンバイにより提供されるローリング・アップグレード機能を利用できるようになります。SQLのALTER DATABASE RECOVER TO LOGICAL STANDBY文で新しいKEEP IDENTITY句オプションを使用することにより、ローリング・アップグレードのためにフィジカル・スタンバイ・データベースを一時的にロジカル・スタンバイ・データベースに変換してから、アップグレードの終了後、プライマリ・データベースとフィジカル・スタンバイ・データベースを元の構成に戻すことができます。


関連項目:


オペレーティング・システムのアップグレードの概要

新しいリリースのOracleソフトウェアにアップグレードする場合、オペレーティング・システム要件が変更されている可能性があります。必要に応じて、Oracle Databaseをアップグレードする前にオペレーティング・システムをアップグレードします。


関連項目:

  • サポートされているオペレーティング・システムの一覧を取得するには、ご使用のプラットフォームの『Oracle Databaseインストレーション・ガイド』を参照してください。

  • オペレーティング・システムのアップグレードを実行する方法については、ご使用のオペレーティング・システム固有のマニュアルを参照してください。


異なるオペレーティング・システムへのデータの移行

DBUAを使用している場合または手動でアップグレードを実行している場合は、オペレーティング・システム間でデータベースのデータは移行できません。たとえば、DBUAを使用して、Solaris上のOracle9iデータベースのデータをWindows上のOracle 11gデータベースには移行できません。

Oracle Databaseソフトウェアを異なるオペレーティング・システムに移行するには、次の手順を実行します。

  1. このマニュアルの指示に従って、現行のオペレーティング・システム・プラットフォームで、新しいOracle Database 11gリリースにアップグレードします。

  2. アップグレードしたデータベースを現行のオペレーティング・システム・プラットフォーム上でテストします。

  3. Oracle Data Guardおよびフィジカル・スタンバイ・データベースを使用して、オペレーティング・システム間での移行を行います。


    関連項目:

    同一のOracle Data Guard構成での異機種間のプライマリ・システムおよびスタンバイ・システムに対するOracle Data Guardサポートの詳細は、https://support.oracle.com/にあるMy Oracle Support(以前のOracleMetaLink)のNote 413484.1を参照してください。

  4. 移行するプラットフォームの組合せでクロス・プラットフォームのフィジカル・スタンバイ・データベースを使用できない場合は、Oracle Database 11gのクロス・プラットフォームのトランスポータブル表領域機能またはOracle Data Pump Export/Importユーティリティを使用して、アップグレードされたデータベースを異なるオペレーティング・システムに移行することができます。


    注意:

    トランスポータブル表領域では、SYSTEM表領域またはSYSAUX表領域の移行はサポートされていません。ロール、トリガー、ビュー、プロシージャなどのすべての非セグメント・ユーザー・データは、スクリプトまたはエクスポート/インポートを使用して新しいオペレーティング・システムに移動する必要があります。

  5. 2つのオペレーティング・システムが同じエンディアンのグループに属している場合は、Oracle Database 11gのクロス・プラットフォームのトランスポータブル表領域機能を使用して、データベース全体を移行することができます。

  6. Oracle Streamsを使用してオペレーティングシステム間でデータを移行することもできます。Oracle Streamsには、アドバンスト・キューやオブジェクト型などに対するデータ型の制限があり、追加の管理作業が必要となります。


関連項目:

  • トランスポータブル表領域の詳細は、『Oracle Databaseバックアップおよびリカバリ・ユーザーズ・ガイド』を参照してください。

  • Data Guardまたはトランスポータブル・データベースを使用した移行の詳細は、『Oracle Database高可用性概要』を参照してください。

  • Oracle Streamsを使用した移行の詳細は、『Oracle Streams概要および管理』を参照してください。

  • 第7章「Oracle Data Pumpを使用したデータの移動」


Oracle Streamsのダウンストリーム取得を使用しているデータベースのアップグレードの概要

Oracle Streamsレプリケーション環境では、ソース・データベース以外のデータベースで取得プロセスを実行することをダウンストリーム取得といいます。このような環境にあるデータベースをアップグレードする場合は、ソース・データベースをアップグレードする前に、ダウンストリーム取得を使用しているデータベースをアップグレードします。この順番でデータベースをアップグレードすることにより、ソース・データベースをアップグレードした後もダウンストリーム取得データベースを引き続き機能させることができます。


関連項目:

ダウンストリーム取得の詳細は、『Oracle Streams概要および管理』を参照してください。

Oracle Database Vaultを使用しているデータベースのアップグレードの概要

Oracle Databaseリリース10.2または11.1からアップグレードするとき、現在のOracleホームでOracle Database Vaultを有効にしている場合は、新しいリリース11.2ソフトウェアがインストールされるターゲットのOracleホームでOracle Database Vaultを無効にする必要があります。データベースをアップグレードする前に、これを実行する必要があります。アップグレードが完了してから、再度Oracle Database Vaultを有効にします。

Database Upgrade Assistant (DBUA)を使用するとき、「次のOracleホームのDatabase Vaultオプションが有効です: C:\oracle\cdctest\product\11.2.0\dbhome_1。アップグレードの前にこのオプションを無効にする必要があります。」などの警告が表示される場合は、新しく11.2ソフトウェアをインストールするターゲットOracleホームでOracle Database Vaultを無効にする必要があります。


関連項目:

Oracle Database Vaultを無効にする手順は、『Oracle Database Vault管理者ガイド』を参照してください。

アップグレードする場合の新しいOracle Databaseソフトウェアのインストール

Oracle Databaseのアップグレードを実行する前に、新しいOracle Databaseリリースのソフトウェアをインストールする必要があります。新しいOracle Database 11gリリース2(11.2)のインストール手順を実行すると、Oracleソフトウェアが新しいOracleホームにインストールされます。これはアウトオブプレース・アップグレードと呼ばれ、パッチ・セットが常にインプレースでインストールされるOracle Databaseの以前のリリースのパッチ・セット・リリースとは異なります、アップグレード処理の停止時間を最小限に抑え、新しいバイナリとソフトウェア・ライブラリの整合性を保証するために、この一連の手順に従うことを強くお薦めします。


重要:

ソースおよびターゲットのOracleホームが別のユーザーによって所有されているときは、DBUAを使用してデータベースをアップグレードすることはできません。これを行うと、エラーPRKH-1014が返されます。ソースおよびターゲットのデータベースの所有者が同じであることを確認するか、または「Oracle Databaseの手動でのアップグレード」で説明されている手動の手順を実行します。

このリリースの新しいOracle Databaseソフトウェアをインストールするには、次の手順を実行します。

  1. Oracle RACデータベースをアップグレードする場合は、記述されている順番で次の手順を実行する必要があります。

    1. 「Oracle ClusterwareおよびOracle ASMインスタンスのアップグレードに関する考慮点」の説明に従って、最初にOracle Clusterwareをアップグレードします。


      注意:

      Oracle RAC以外のデータベースをアップグレードする場合は、DBUAを実行する前にOracle Net Configuration Assistant(NETCA)を実行する必要があります。「Oracle9iからアップグレードする場合のリスナーの構成」を参照してください。Oracle RACデータベースをOracle Clusterwareアップグレードの一部としてアップグレードする場合は、OUIによって自動的にNETCAが実行され、ネットワーク・リスナーがアップグレードされます。したがって、NETCAを手動で実行する必要はありません。

    2. Oracle Grid Infrastructureのインストール・メディアをマウントします。

    3. アップグレードを行う各ノードでオペレーティング・システムの前提条件チェックを実行し、ノードがOracle Grid Infrastructure(Oracle ClusterwareおよびOracle ASM)に必要なシステムの前提条件を満たしていることを確認します。

    4. 必要に応じて、旧リリースのOracle ClusterwareまたはOracle Cluster Ready Servicesソフトウェアが最新のパッチ・バージョンになるように、パッチのアップグレードを実行します。

    5. Oracle Grid Infrastructureインストールの所有者にするユーザーでログインしていることを確認し、Oracle Grid Infrastructureのインストールを実行します。インストーラの要求に応じて情報を入力します。

    6. プロンプトが表示されたら、別のターミナル・セッションを開き、rootでログインしてroot.shを実行します。


      関連項目:

      • 『Oracle Grid Infrastructureインストレーション・ガイド』

      • 『Oracle Real Application Clustersインストレーション・ガイド』


  2. Oracle Clusterwareをアップグレードした後、Oracleのオペレーティング・システム固有のマニュアルを参照して、Oracle Databaseソフトウェアのインストールの準備を行い、Oracle Universal Installerを起動します。

    • DBUAを使用してアップグレードを行う前に、アップグレード前情報ツールを実行して、DBUAでチェックされる項目のタイプを確認しておくことをお薦めします。(「アップグレード前情報ツールの使用」を参照してください。)インストールの完了後、単独でDBUAを実行できます。

    • Oracle Label Security、Oracle Database Vault、またはこれらの両方を使用する場合、「データベース・エディションの選択」ページで「Enterprise Edition」を選択し、「オプションの選択」をクリックして、コンポーネント・リストから一方または両方のコンポーネントを有効にします。詳細は、『Oracle Label Security管理者ガイド』および『Oracle Database Vault管理者ガイド』を参照してください。

    Oracle Databaseソフトウェアのインストールが正常に完了したら、「終了」ボタンをクリックしてOracle Universal Installerを閉じます。

最新のパッチ・セット更新および必須のパッチの概要

Oracle Database 11gリリース2(11.2)のソフトウェアには、Oracle Databaseのすべての最新パッチと更新を含む完全なリリースが含まれます。このリリースのアップグレード処理に進む前に、パッチ・セットの更新を確認する必要はありません。ただし、データベース管理の一部として、パッチおよびパッチ・セットの更新を定期的に確認することをお薦めします。


関連項目:

  • 『Oracle Universal InstallerおよびOPatchユーザーズ・ガイド』

  • My Oracle Support(https://support.oracle.com)のNote ID 730365.1「Oracle Database Upgrade Path Reference List」(ダウンロード情報、パッチ番号および他のノートへのリンクが示された、最も入手しやすいOracle Databaseリリースのアップグレード・リファレンス・リストが含まれています)


アップグレード前情報ツールの使用

Oracle Database 11gリリース2(11.2)のソフトウェアおよび必須パッチをインストールした後、新しいリリースにアップグレードする前にデータベースを分析することをお薦めします。これは、アップグレード対象のデータベースの環境からアップグレード前情報ツールを実行することによって行います。アップグレード前情報ツールは、Oracle Database 11gリリース2(11.2)ソフトウェアに付属するSQLスクリプトです。これは手動でアップグレードを行う際に必要な手順であり、この手順を実行しないと、catupgrd.sqlスクリプトはエラーを発生して終了します。DBUAを使用してアップグレードを行う場合も、アップグレード前情報ツールを実行して、DBUAでチェックされる項目を確認しておくことをお薦めします。

次の項では、アップグレード前情報ツールに関する追加情報を説明します。


関連項目:

My Oracle Support(https://support.oracle.com)で参照可能なNote 884522.1「How to Download and Run Oracle's Database Pre-Upgrade Utility」(アップグレード前情報ツールの最新バージョンが含まれます)Note 884522.1で入手可能なこのスクリプトの最新バージョンを使用することを強くお薦めします。

アップグレード前情報ツールを実行するには、次の手順を実行します。

  1. アップグレード対象データベースの環境の所有者としてシステムにログインします。


    重要:

    アップグレード対象のデータベースの環境にアップグレード前情報ツールをコピーして、その環境から実行する必要があります。

  2. SQL*Plusを起動します。

  3. SYSDBA権限を持つユーザーとして、データベース・インスタンスに接続します。

  4. 後で分析するために、結果をログ・ファイルにスプールするようにシステムを設定します。

    SQL> SPOOL upgrade_info.log
    
  5. アップグレード前情報ツールの実行

    SQL> @$11g_ORACLE_HOME/rdbms/admin/utlu112i.sql
    
  6. スクリプト結果のログ・ファイルへのスプーリングをオフにします。

    SQL> SPOOL OFF
    

    アップグレード前情報ツールの出力内容を、upgrade_info.logで確認します。


注意:

Oracle interMediaは、Oracle Database 11gリリース1(11.1)ではOracle Multimediaになりました。

アップグレード前情報ツールの出力の概要

アップグレード前情報ツールでは、データベースで発生する可能性のあるアップグレードの問題に関する警告が表示されます。例3-1の出力は、Oracle Database 11gリリース2(11.2)のソフトウェアをインストールした後にアップグレード前情報ツールの実行によって生成されたレポートを示しています。ツールによって表示される警告以外に、アップグレードの実行前にアップグレード前情報ツールの出力に示されているエラーに対処する必要があります。

無効なオブジェクトおよび無効なコンポーネントについては、WARNINGでマーキングされる無効なオブジェクトおよびコンポーネントの数を最小限に抑える手段として、アップグレードを開始する前にutlrp.sqlを実行することをお薦めします。

次の項では、アップグレード前情報ツールの出力例を示し、出力の各セクションについて説明します。


重要:

データベースにリリース10gDMSYSスキーマが存在することに関する警告が表示された場合、アップグレードに進む前にDMSYSスキーマを削除する必要があります。手順については、『Oracle Data Mining管理者ガイド』を参照してください。


例3-1 アップグレード前情報ツールの出力例

Oracle Database 11.2 Pre-Upgrade Information Tool 07-12-2011 12:51:34
Script Version: 11.2.0.3.0 Build: 001
.
**********************************************************************
Database:
**********************************************************************
--> name:          O112
--> version:       11.2.0.1.0
--> compatible:    11.2.0.0.0
--> blocksize:     8192
--> platform:      Linux x86 64-bit
--> timezone file: V11
.
**********************************************************************
Tablespaces: [make adjustments in the current environment]
**********************************************************************
--> SYSTEM tablespace is adequate for the upgrade.
.... minimum required size: 701 MB
--> SYSAUX tablespace is adequate for the upgrade.
.... minimum required size: 453 MB
--> UNDOTBS1 tablespace is adequate for the upgrade.
.... minimum required size: 400 MB
--> TEMP tablespace is adequate for the upgrade.
.... minimum required size: 60 MB
--> EXAMPLE tablespace is adequate for the upgrade.
.... minimum required size: 78 MB
.
**********************************************************************
Flashback: OFF
**********************************************************************
**********************************************************************
Update Parameters: [Update Oracle Database 11.2 init.ora or spfile]
Note: Pre-upgrade tool was run on a lower version 64-bit database.
**********************************************************************
--> If Target Oracle is 32-Bit, refer here for Update Parameters:
-- No update parameter changes are required.
.
 
--> If Target Oracle is 64-Bit, refer here for Update Parameters:
-- No update parameter changes are required.
.
**********************************************************************
Renamed Parameters: [Update Oracle Database 11.2 init.ora or spfile]
**********************************************************************
-- No renamed parameters found. No changes are required.
.
**********************************************************************
Obsolete/Deprecated Parameters: [Update Oracle Database 11.2 init.ora or spfile]
**********************************************************************
-- No obsolete parameters found. No changes are required
.
 
**********************************************************************
Components: [The following database components will be upgraded or installed]
**********************************************************************
--> Oracle Catalog Views         [upgrade]  VALID
--> Oracle Packages and Types    [upgrade]  VALID
--> JServer JAVA Virtual Machine [upgrade]  VALID
--> Oracle XDK for Java          [upgrade]  VALID
--> Oracle Workspace Manager     [upgrade]  VALID
--> OLAP Analytic Workspace      [upgrade]  VALID
--> OLAP Catalog                 [upgrade]  VALID
--> Oracle Label Security        [upgrade]  VALID
--> Oracle Database Vault        [upgrade]  VALID
... To successfully upgrade Oracle Database Vault, choose
... 'Select Options' in Oracle installer and then select
... Oracle Label Security.
--> EM Repository                [upgrade]  VALID
--> Oracle Text                  [upgrade]  VALID
--> Oracle XML Database          [upgrade]  VALID
--> Oracle Java Packages         [upgrade]  VALID
--> Oracle interMedia            [upgrade]  VALID
--> Spatial                      [upgrade]  VALID
--> Expression Filter            [upgrade]  VALID
--> Rule Manager                 [upgrade]  VALID
--> Oracle Application Express   [upgrade]  VALID
... APEX will only be upgraded if the version of APEX in
... the target Oracle home is higher than the current one.
--> Oracle OLAP API              [upgrade]  VALID
.
**********************************************************************
Miscellaneous Warnings
**********************************************************************
WARNING: --> Database is using a timezone file older than version 14.
.... After the release migration, it is recommended that DBMS_DST package
.... be used to upgrade the 11.2.0.1.0 database timezone version
.... to the latest version which comes with the new release.
WARNING: --> Database contains schemas with objects dependent on DBMS_LDAP package.
.... Refer to the 11g Upgrade Guide for instructions to configure Network ACLs.
.... USER APEX_030200 has dependent objects.
.
**********************************************************************
Recommendations
**********************************************************************
Oracle recommends gathering dictionary statistics prior to
upgrading the database.
To gather dictionary statistics execute the following command
while connected as SYSDBA:
 
    EXECUTE dbms_stats.gather_dictionary_stats;
 
**********************************************************************
Oracle recommends reviewing any defined events prior to upgrading.
 
To view existing non-default events execute the following commands
while connected AS SYSDBA:
  Events:
    SELECT (translate(value,chr(13)||chr(10),' ')) FROM sys.v$parameter2
      WHERE  UPPER(name) ='EVENT' AND  isdefault='FALSE'
 
  Trace Events:
    SELECT (translate(value,chr(13)||chr(10),' ')) from sys.v$parameter2
      WHERE UPPER(name) = '_TRACE_EVENTS' AND isdefault='FALSE'
 
Changes will need to be made in the init.ora or spfile.
 
**********************************************************************

Databaseセクションの内容

Databaseセクションには、データベース名、リリース番号(バージョン)、互換性レベル、ブロックサイズ、OSプラットフォーム、タイムゾーン・ファイルなど、現行のデータベースに関するグローバル・データベース情報が表示されます。データベースをアップグレードする前にCOMPATIBLE初期化パラメータを調整する必要がある場合は、警告が表示されます。


関連項目:

COMPATIBLE初期化パラメータの設定の詳細は、「COMPATIBLE初期化パラメータの設定」を参照してください。

Tablespacesセクションの内容

Tablespacesセクションには、現行のデータベース内の表領域のリストが表示されます。各表領域に対して、表領域名および最低限必要なサイズが表示されます。また、表領域がアップグレードに適切かどうかを示すメッセージが各表領域の横に表示されます。最低限必要なサイズを満たしていない場合は、ツールによって推奨される調整を行う必要があります。

SQLスクリプトおよびユーティリティを使用して手動でアップグレードする場合は、現行のデータベース内の十分な空き領域のない表領域に領域を追加する必要があります。この表領域の調整は、データベースをアップグレードする前に行う必要があります。これらの作業の一部は、DBUAによって自動的に実行されます。

Rollback Segmentsセクションの内容

Rollback Segmentsセクションには、SYSTEM表領域のロールバック・セグメントのステータスおよびアップグレードの実行前に行う必要がある調整に関する警告が表示されます。このセクションは、ロールバック・セグメントが存在する場合のみ表示されます。

Flashbackセクションの内容

Flashbackセクションには、フラッシュバックがオンまたはオフのどちらであるか、および増やす必要があるプール・サイズとキャッシュ・サイズに関する警告が表示されます。調整が必要なundo_managementのステータスも表示されます。ALTER SYSTEM SETコマンドを実行すると、プール・サイズとデータベース・キャッシュ・サイズを変更できます。

たとえば、次のコマンドを実行して、java_pool_sizeを推奨サイズに設定します。

SQL> ALTER SYSTEM SET java_pool_size='nnnM' SCOPE=spfile;

他の設定の変更も同様に行うことができます。

Update Parametersセクションの内容

Update Parametersセクションには、データベースのアップグレード前に調整する必要がある、現行のデータベースのパラメータ・ファイル(init.oraまたはspfile)内にある初期化パラメータのリストが表示されます。パラメータ・ファイルの調整は、ファイルを新しいOracle Database 11gリリースにコピーした後に行う必要があります。

Oracle ASMディスク・グループを使用している場合は、ディスク・グループのデータベース互換性属性が、init.oraで設定されている互換性パラメータと同じであることを確認する必要があります。


関連項目:

このOracle Database 11gリリースでの初期化パラメータの変更に関する詳細は、付録A「Oracle Databaseのアップグレード後の動作の変更点」を参照してください。

Renamed Parametersセクションの内容

Renamed Parametersセクションには、現行のデータベースのパラメータ・ファイル内の初期化パラメータのうち、新しいOracle Database 11gリリースで名前が変更された初期化パラメータのリストが表示されます。新しいデフォルト値も表示されます。


関連項目:

新しいOracle Database 11gリリースで名前が変更された初期化パラメータについては、付録A「Oracle Databaseのアップグレード後の動作の変更点」を参照してください。

Obsolete/Deprecated Parametersセクションの内容

Obsolete/Deprecated Parametersセクションには、現行のデータベースのパラメータ・ファイル内の初期化パラメータのうち、新しいOracle Database 11gリリースで廃止または非推奨になった初期化パラメータのリストが表示されます。廃止された初期化パラメータは、データベースをアップグレードする前にパラメータ・ファイルから削除する必要があります。


関連項目:

新しいOracle Database 11gリリースで廃止および非推奨になった初期化パラメータのリストは、付録A「Oracle Databaseのアップグレード後の動作の変更点」を参照してください。

Componentsセクションの内容

Componentsセクションには、現行のデータベースを新しいOracle Database 11gリリースにアップグレードするときに、アップグレードまたはインストールされるデータベース・コンポーネントのリストが表示されます。ソフトウェア・コンポーネントは、特定のデータベース機能(Oracle Text、Oracle Javaパッケージ、Oracle RACなど)を提供する構築済のコード・ライブラリです。

Miscellaneous Warningsセクションの内容

Miscellaneous Warningsセクションには、アップグレード前またはアップグレード後に注意する必要がある特定の状況に関する警告が表示されます。たとえば、データベースでアップグレードに必要なバージョンより古いバージョンのタイムゾーン・ファイルが使用されている場合、必要な処理を示す警告が表示されます。

Recommendationsセクションの内容

Recommendationsセクションには、新しいOracle Database 11gリリースにアップグレードする前に実行する必要がある推奨SQL文やコマンドなどのOracle推奨事項が表示されます。

アップグレード前情報ツールの各種の警告

新しいOracle Database 11gリリースへのアップグレードを行う前に、アップグレード前情報ツールによって表示された情報および警告の分析を行うことをお薦めします。次の項では、警告および適切な対処法について説明します。

以前のリリースからのCONNECTロールの更新

Oracle9iリリース2(9.2)またはOracle Database 10gリリース1(10.1)から新しいOracle Database 11gリリースにアップグレードすると、CONNECTロールに含まれる権限はCREATE SESSION権限のみになります。以前のリリースでCONNECTロールに付与された他の権限は、アップグレード時に取り消されます。

データベース内でCONNECTロールを付与されているユーザーおよびロールを識別するには、次の手順を実行します。 

  1. 次の問合せを実行します。

    SELECT grantee FROM dba_role_privs
         WHERE granted_role = 'CONNECT' and
                         grantee NOT IN (
                                    'SYS', 'OUTLN', 'SYSTEM', 'CTXSYS', 'DBSNMP', 
                                    'LOGSTDBY_ADMINISTRATOR', 'ORDSYS',
                                    'ORDPLUGINS',  'OEM_MONITOR', 'WKSYS', 'WKPROXY', 
                                    'WK_TEST', 'WKUSER', 'MDSYS', 'LBACSYS', 'DMSYS',
                                    'WMSYS', 'EXFSYS', 'SYSMAN', 'MDDATA',
                                     'SI_INFORMTN_SCHEMA', 'XDB', 'ODM');
    
    
  2. ユーザーまたはロールにCREATE SESSION以外の権限が必要な場合は、アップグレード前に特定の必要な権限を付与します。

    Oracle提供のアップグレード・スクリプトによって、Oracleで指定されたユーザーの権限が調整されます。

アクセス制御リストおよびネットワーク・ユーティリティ・パッケージの管理と更新

新しいOracle Database 11gリリースには、Oracle XML DBを使用するUTL_TCPUTL_SMTPUTL_MAILUTL_HTTPおよびUTL_INADDRパッケージに対するファイングレイン・アクセス制御が含まれています。これらのパッケージのいずれかを使用するアプリケーションがある場合は、Oracle XML DBが現在インストールされていなければインストールする必要があります。

ACLおよびネットワーク・ユーティリティ・パッケージを更新するには、次の手順を実行します。 

  1. Oracle XML DBが現在インストールされていない場合は、これをインストールします。


    関連項目:

    『Oracle XML DB開発者ガイド』

  2. DBMS_LDAP PL/SQLパッケージおよびHttpUriType型の新しい動作が有効になるには、新しいOracle Databaseリリース11.2にアップグレードした後にアクセス制御リスト(ACL)を作成または更新する必要があります。

    たとえば、アプリケーションがDBMS_LDAPパッケージに依存している場合は、エラー「ORA-24247: アクセス制御リスト(ACL)によりネットワーク・アクセスが拒否されました」が発生する可能性があります。ログイン中のユーザーは、DBMS_LDAP.initで指定されたホストおよびポートのconnect権限を持っている必要があります。

  3. Oracle XML DBがアップグレード対象のデータベースにインストールされているためにUTL_TCPUTL_SMTPUTL_MAILUTL_HTTPおよびUTL_INADDRパッケージのいずれかまたはすべてがインストールされている場合は、これらのパッケージが新しいリリースに対応した最新バージョンになるように、アップグレードの実行後にこれらのパッケージを再インストールする必要がある場合があります。


関連項目:

『Oracle Databaseセキュリティ・ガイド』のPL/SQLパッケージおよびタイプでのファイングレイン・アクセスの管理に関する説明および「依存性の評価およびネットワーク・ユーティリティ・パッケージのACLの追加」

依存性の評価およびネットワーク・ユーティリティ・パッケージのACLの追加

新しいOracle Database 11gリリースにアップグレードした後は、ネットワーク・ユーティリティ・パッケージの依存性を評価し、適切なアクセス制御リスト(ACL)を追加することによってアクセスを提供する必要がある場合があります。

アクセスのステータスを確認し、ネットワーク・ユーティリティ・パッケージのACLを追加するには、次の手順を実行します。

  1. 「アップグレード前情報ツールの使用」の説明に従って、アップグレード前情報ツールを実行します。

  2. アップグレード前情報ツールの出力(upgrade_info.log)で、次のようなメッセージがないかを確認します。

    WARNING: --> Database contains schemas with objects dependent on network packages.
    .... Refer to the 11g Upgrade Guide for instructions to configure Network ACLs.
    .... USER WKSYS has dependent objects.
    .... USER SYSMAN has dependent objects.
    .... USER FLOWS_010600 has dependent objects.
    .
    
  3. DBA_DEPENDENCIESビューを問い合せて、依存性の詳細を取得します。次に例を示します。

    SELECT * FROM DBA_DEPENDENCIES
    WHERE referenced_name IN ('UTL_TCP','UTL_SMTP','UTL_MAIL','UTL_HTTP','UTL_INADDR','DBMS_LDAP')
      AND owner NOT IN ('SYS','PUBLIC','ORDPLUGINS');
    
  4. テスト環境で使用できるようにアップグレード後のスクリプトを準備します。これによって、新しいアクセス制御がアップグレード・テストの一部に含まれます。

    これらのパッケージが以前のリリースと同様に動作するようにデータベースのネットワーク・アクセス制御リスト(ACL)を構成する場合は、「Oracle Databaseのアップグレード後の外部ネットワーク・サービスへのファイングレイン・アクセスの構成」に示されているスクリプトの例を参照してください。このスクリプトには、DBMS_NETWORK_ACL_ADMINパッケージを使用してアクセス制御リストに対して権限の作成、割当ておよび追加を行う方法が示されています。

  5. アップグレードが完了した後、特定の必要な権限を付与する必要があります。アクセス権は、元のデータベースでの使用方法に基づいて決定します。

以前のリリースからのダウングレードおよびデータベース・リンクについて

この情報は、アップグレードの実行後に元のデータベース・リリースにダウングレードする必要がある場合にのみ重要となります。Oracle9iリリース2(9.2)またはOracle Database 10gリリース1(10.1)から新しいOracle Database 11gリリースにアップグレードするときに、データベース・リンクのすべてのパスワードが暗号化されます。

  • 元のリリースにダウングレードするには、ダウングレードする前に、暗号化されたパスワードが指定されたすべてのデータベース・リンクを削除する必要があります。したがって、ダウングレードしたデータベースにはデータベース・リンクは存在しません。

  • Oracle Data Pumpのデータベースの全体エクスポートをINCLUDE=DBLINKとともに使用して、ダウングレードするデータベースへのインポートに適したダンプ・ファイルに、すべてのデータベース・リンクをエクスポートします。その後、このダンプ・ファイルは、ダウングレード後にデータベース・リンクを置き換えるために使用できます。

  • 新しく作成するデータベース・リンク(新しいリリースを実行中に作成する可能性があるデータベース・リンク)のパスワードを確認します。以前のリリース11.1にダウングレードした後でデータベース・リンク・パスワードをリセットする必要があるため、データベース・リンク・パスワードが必要です。

TIMESTAMP WITH TIME ZONEデータ型に関する警告の概要

Oracle Database 11gリリース2(11.2)に付属のタイムゾーン・ファイルは更新され、一部のタイムゾーン地域の変換ルールに対して行われた変更が反映されています。これらの変更は、TIMESTAMP WITH TIME ZONEデータ型の既存のデータに影響する場合があります。

Oracle Database 11gリリース2(11.2)では、以前のリリースと比較してタイムゾーンの動作が大きく変更されました。データベースをアップグレードする前に、最新のタイムゾーン・ファイルを取得する必要があります。アップグレード中のデータベースのタイムゾーン・ファイルのバージョンが、新しい11.2リリースに対して使用可能なタイムゾーン・ファイルの最新バージョンではない場合は、アップグレード前情報ツールによって、警告が表示されて続行方法が説明されます。表3-1は、警告と、タイムゾーン・ファイルのバージョンの不一致を解決する方法の概要を示しています。


注意:

タイムゾーン・ファイルのバージョンが一致していない場合、データベースに格納されているTIMESTAMP WITH TIME ZONE型のデータは、アップグレード中に破損する可能性があります。


表3-1 タイムゾーン・ファイルのバージョンの修正を行う場合の選択肢

アップグレード中のデータベースのタイムゾーン・バージョン タイムゾーン・ファイルの修正方法

新しいデータベース・リリースに含まれている最新バージョンより前のバージョンの場合、アップグレード前情報ツールには「Database is using a time zone file older than version n」と表示されます。

データベースのアップグレードの完了後

DBMS_DST PL/SQLパッケージを使用して、『Oracle Databaseグローバリゼーション・サポート・ガイド』のタイムゾーン・ファイルおよびTIMESTAMP WITH TIME ZONEデータのアップグレード手順に関する説明に従ってください。

新しいデータベース・リリースに含まれているバージョンより新しいバージョンの場合、アップグレード前情報ツールには、「Database is using a time zone file greater than version n.」と表示されます。

データベースのアップグレードの開始前

アップグレード対象のデータベースで現在使用されているタイムゾーン・ファイルと同じバージョンを使用して、新しいOracleホームにパッチ(RDBMS DSTパッチ)を適用する必要があります。適用しない場合、アップグレードは失敗します。

使用しているタイムゾーン・ファイルのバージョンに適したパッチをOracleホームに適用する必要があります。アップグレードする各データベースにパッチを適用します。適用しない場合、データベースをアップグレードすることなくアップグレード・スクリプトが終了します。



関連項目:

  • My Oracle Support(https://support.oracle.com)のSupport Note「Updated DST Transitions and New Time Zones in Oracle Time Zone File Patches」(ID 412160.1)

  • タイムゾーンのアップグレードの詳細は、『Oracle Databaseグローバリゼーション・サポート・ガイド』を参照してください。


オプティマイザ統計を収集するための停止時間の短縮(オプション)

統計が存在しないディクショナリ表のオプティマイザ統計は、新しいOracle Database 11gリリースへのアップグレード時に収集されます。この統計収集処理は、多数のディクショナリ表が含まれているデータベースでは時間がかかる場合がありますが、統計が存在しないか、またはアップグレード時に大きく変更されるディクショナリ表に対してのみ行われます。

統計の収集時に発生する停止時間を短縮するには、次の手順を実行します。 

  • データベースを実際にアップグレードする前に統計を収集します。これらの統計の収集にはDBMS_STATS.GATHER_DICTIONARY_STATSプロシージャを使用することをお薦めします。たとえば、次のSQL文を入力できます。

    EXEC DBMS_STATS.GATHER_DICTIONARY_STATS;
    

注意:

Oracle9iリリース2(9.2)を使用している場合は、DBMS_STATS.GATHER_SCHEMA_STATSプロシージャを使用して統計を収集する必要があります。これは、このマニュアルの付録Bに示すスクリプトを実行して行うことができます。

オプティマイザ統計に使用されるシステム・コンポーネントおよびスキーマ

表3-2に、アップグレード時に統計収集で確認されるシステム・コンポーネントおよびスキーマを示します。

表3-2 システム・コンポーネントおよびスキーマに対する統計収集

コンポーネント名 スキーマ

JServer JAVA Virtual Machine

SYS

OLAPアナリティック・ワークスペース

SYS

Oracle Database Catalog Views

SYS

Oracle Database JAVA Packages

SYS

Oracle Database Packages and Types

SYSDBSNMPOUTLNSYSTEMDIP

Oracle Database Vault

DVSYS

Oracle Enterprise Manager

SYSMAN

Oracle Expression Filter

EXFSYS

Oracle Multimedia

ORDSYS、ORDPLUGINS、SI_INFORMTN_SCHEMA

Oracle Label Security

LBACSYS

Oracle OLAP API

SYS

Oracle Spatial

MDSYS、MDDATA

Oracle Text

CTXSYS

Oracle Workspace Manager

WMSYS

Oracle XDK

SYS

Oracle XML Database

XDB


無効なオブジェクトの識別

データベースのアップグレード前に検出された無効なSYS/SYSTEMオブジェクトは、registry$sys_inv_objsという名前の表に格納されます。データベースのアップグレード前に検出されたSYS/SYSTEM以外の無効なオブジェクトは、registry$nonsys_inv_objsに格納されます。

アップグレードが原因で新しく無効になったオブジェクトを識別するには、次の手順を実行します。 

  • アップグレード後に、ORACLE_HOME/rdbms/admin/utluiobj.sqlを実行します。

emdwgrdユーティリティを使用したデータベースの制御ファイルおよびデータの保存

新しいOracle Database 11gリリースにアップグレードした後でOracle Enterprise Manager Database Controlをダウングレードする場合は、データベースをアップグレードする前にデータベースの制御ファイルおよびデータを保存する必要があります。データベースをアップグレードする前にデータベースの制御ファイルとデータのコピーを保存するためのemdwgrdユーティリティが提供されています。

emdwgrdユーティリティは、新しいOracle Database 11gリリースのORACLE_HOME/binディレクトリにあります。emdwgrdユーティリティは、LinuxとUNIX用のemdwgrdemdwgrd.plおよびWindows用のemdwgrd.batemdwgrd.plで構成されています。ユーティリティを実行する前に、新しいOracle Database 11gリリースのソフトウェアをインストールして、新しいOracleホームからスクリプトを起動する必要があります。ただし、emdwgrdユーティリティでは、ORACLE_HOMEを古いOracleホームに設定する必要があります。

emdwgrdを使用してデータベースの制御ファイルとデータを保存するには、次の手順を実行します。 

  1. 新しいOracle Database 11gリリースのソフトウェアをインストールします。(インプレース・パッチ・セット・アップグレードでは、この手順は必要ありません。)

  2. ORACLE_HOMEを古いOracleホームに設定します。(インプレース・パッチ・セット・アップグレードでは、この手順は必要ありません。)

  3. ORACLE_SIDを、アップグレードするデータベースのSIDに設定します。

  4. PATHLD_LIBRARY_PATHおよびSHLIB_PATHが、アップグレードするデータベースのOracleホームを指すように設定します。

  5. 新しいOracle Database 11gリリースのOracleホームに移動します。

  6. 次のコマンドのいずれかを実行します。

    • 単一インスタンスのデータベースの場合は、次のコマンドを実行します。このとき、old_SIDはアップグレードするデータベースのSIDで、save_directoryはデータベースの制御ファイルとデータの格納場所として選択した場所へのパスです。

      emdwgrd -save -sid old_SID -path save_directory
      

      注意:

      このスクリプトは、LinuxおよびUNIXプラットフォーム場合、emdwgrd.shにあります。Windowsの場合、このスクリプトはemdwgrd.batにあります。

    • データベースがOracle RACデータベースの場合は、クラスタ・ノード間のリモート・コピーが必要です。構成済のリモート・コピーを示す環境変数を定義します。次に例を示します。

      setenv EM_REMCP /usr/bin/scp
      

      続いて、次のsaveコマンドを実行します。

      emdwgrd -save -cluster -sid old_SID -path save_directory
      

      リリース10gのOracleホームが共有デバイス上にある場合は、前述のコマンドラインに-sharedを追加します。

  7. アップグレードするデータベースのSYSパスワードを入力します。


注意:

データベースをアップグレードした後に、DBUAバックアップおよびリストアを使用して以前のOracle Enterprise Manager Database Control環境に戻すことも可能です。ただし、アップグレードしてからリストアするまでの間に蓄積されたユーザー・データは、すべて失われます。データベースの制御ファイルおよびデータを保存しておくことで、データベースとDatabase Controlの両方をダウングレードできるようになります。アップグレードしてからダウングレードするまでの間に蓄積されたデータベースの制御データはすべて失われますが、すべてのユーザー・データが保持されます。

マテリアライズド・ビューのリフレッシュ完了の確認

アップグレードする前に、すべてのマテリアライズド・ビューが完了するまで待機する必要があります。システムに問い合せて、進行中のマテリアライズド・ビューのリフレッシュがあるかどうかを判断することができます。

進行中のマテリアライズド・ビューのリフレッシュがあるかどうかを判断するには、次の手順を実行します。

  • 次の問合せを実行します。

    SQL> SELECT * FROM sys.obj$ o, sys.user$ u, sys.sum$ s
    WHERE o.type# = 42 AND bitand(s.mflags, 8) = 8;
    

メディア・リカバリを必要とするファイルがないことの確認

データベースをアップグレードする前に、メディア・リカバリを必要とするファイルがないことを確認する必要があります。システムに問い合せてファイルのリストを取得し、必要に応じてこれらのファイルのリカバリを行うことができます。

メディア・リカバリを必要とするファイルのリストを取得するには、次の手順を実行します。

  • 次の文を発行します。

    SQL> SELECT * FROM v$recover_file;
    

関連項目:

  • 『Oracle Databaseバックアップおよびリカバリ・ユーザーズ・ガイド』

  • 『Oracle Databaseバックアップおよびリカバリ・リファレンス』の「ブロック・メディア・リカバリの実行」


バックアップ・モードのファイルがないことの確認

アップグレードの実行時にバックアップ・モードのファイルがあってはいけないため、バックアップが完了するまで待機する必要があります。システムに問い合せてバックアップ・モードのファイルのリストを表示してから、適切な対処(バックアップが完了するまで待機する、または必要のないバックアップを中止する)を行うことができます。

バックアップ・モードのファイルのリストを取得するには、次の手順を実行します。

  • 次の文を発行します。

    SQL> SELECT * FROM v$backup WHERE status != 'NOT ACTIVE';
    

未処理の分散トランザクションの解決

アップグレードを実行する前に、未処理の分散トランザクションを解決する必要があります。これを行うには、最初に問合せによって保留中のトランザクションを確認してから、トランザクションをコミットします。保留中のすべての分散トランザクションがコミットされるまで待機する必要があります。

未処理の分散トランザクションを解決するには、次の手順を実行します。

  1. 次の文を発行します。

    SQL> SELECT * FROM dba_2pc_pending;
    
  2. 前の手順の問合せによって行が戻された場合は、次の文を発行します。

    SQL> SELECT local_tran_id FROM dba_2pc_pending;
    SQL> EXECUTE dbms_transaction.purge_lost_db_entry('');
    SQL> COMMIT;
    

スタンバイ・データベースとプライマリ・データベースの同期化

スタンバイ・データベースが存在する場合は、スタンバイ・データベースとプライマリ・データベースを同期化する必要があります。

スタンバイ・データベースが存在するかどうかを確認して同期化するには、次の手順を実行します。 

  1. 次の問合せを発行します。

    SQL> SELECT SUBSTR(value,INSTR(value,'=',INSTR(UPPER(value),'SERVICE'))+1)
    FROM v$parameter
    WHERE name LIKE 'log_archive_dest%' AND UPPER(value) LIKE 'SERVICE%';
    
  2. 前の手順の問合せによって行が戻された場合は、スタンバイ・データベースとプライマリ・データベースを同期化します。

    • プライマリ・データベースでの最後のログ・スイッチの後のすべてのログがスタンバイ・サーバーに転送されていることを確認します。

    • NODELAYオプションを使用して、スタンバイ・データベースのリカバリを開始します。

データベースのごみ箱のパージ

アップグレード処理を開始する前に、データベースのごみ箱を空にしておく必要があります。PURGE文を使用すると、ごみ箱からアイテムおよびその関連オブジェクトを削除して、記憶域の領域を解放することができます。

データベースのごみ箱を空にするには、次の手順を実行します。

  • 次のコマンドを発行します。

    SQL> PURGE dba_recyclebin
    

注意:

アップグレード処理を行う際は、ORA-00600エラーの発生の回避とアップグレード時間の短縮のために、ごみ箱を空にしておく必要があります。


Oracle9iからアップグレードする場合のリスナーの構成

Oracle9iからのアップグレードで、Oracle9i リポジトリにリスナーが設定されていない場合は、DBUAを実行する前にOracle Net Configuration Assistantを実行し、listener.oraファイルを含む新しいOracle Database 11gデータベースのリスニング・プロトコルのアドレスおよびサービス情報を構成します。Oracle Database 11gデータベースには、新しいバージョンのリスナーが必要です。以前のバージョンのリスナーは、Oracle Database 11gデータベースでは使用できません。ただし、新しいバージョンのリスナーを以前のバージョンのOracle Databaseで使用することは可能です。

Oracle RACデータベースをアップグレードするには、次のアップグレード方法があります。

  • DBUAを使用してOracle RACデータベースをアップグレードします(この方法では、古いOracleホームから、新しいOracle Grid Infrastructure 11gリリース2のホームに、自動的にリスナーが移行されます)。


    注意:

    Oracle Database 11gリリース2以上では、Oracle Grid Infrastructureホームでlsnrctlコマンドを使用してリスナーを管理する必要があります。以前のリリースのOracleホームの場所からlsnrctlコマンドを使用しないでください。

  • Oracle9iからアップグレードする場合、またはDBUAを使用せずに手動でアップグレードする場合は、Oracle RACデータベースをアップグレードする前に、Oracle Net Configuration Assistantを実行します。

    この方法には2つの手順が含まれます。まず、古いOracleホームからOracle Net Configuration Assistantを実行して、古いリスナーを削除します。次に、再度、新しいOracle Database 11gリリースのOracleホームからOracle Net Configuration Assistantを実行して、新しいリスナーを作成する必要があります。

    古いリスナーは、新しいリスナーを作成する前に削除する必要があります。先に新しいOracleホームから新しいリスナーを作成しようとした場合に、古いリスナーのものと同じ名前およびポートを使用すると、Oracle Net Configuration Assistantからエラーが戻されます。


    関連項目:

    Oracle Net Configuration Assistantの使用方法の詳細は、『Oracle Database Net Services管理者ガイド』を参照してください。

Linux、UNIXおよびWindowsでのDatabase Upgrade Assistantを使用したアップグレード

DBUA提供のGraphical User Interface(GUI)による指示に従ってデータベースをアップグレードすることも、ユーザー・インタフェースを表示しないサイレント・モードでDBUAを起動することもできます。次の項では、Database Upgrade Assistant(DBUA)を使用したデータベースのアップグレード処理について説明します。

DBUAの使用に関する考慮点

  • 重要: アップグレードを停止しても、データベースをリストアしない場合は、DBUAを再起動できません。そのかわりに、「Oracle Databaseの手動でのアップグレード」.の説明に従って、手動(コマンドライン)によるアップグレードを続行する必要があります。

  • DBUAは、以前のOracle Database 11gパッチ・リリースからのアップグレードに加えて、Oracle RACデータベースおよびOracle Database単一インスタンス・データベースの両方のOracle Databaseメジャー・リリースからのアップグレードにも使用できます。パッチ・リリースをアップグレードする手順は、通常のアップグレードの手順と異なる点はありません。

  • Oracle Net Configuration Assistantは、DBUAより前に実行する必要があります。「Oracle9iからアップグレードする場合のリスナーの構成」を参照してください。

    既存のOracle Enterprise Manager Database Controlをアップグレードする場合、または新しいOracle Database 11gリリース用の新しいOracle Enterprise Manager Database Controlを構成する場合は、Oracle Enterprise Managerをアップグレードする前にリスナーを実行する必要があります。Oracle Enterprise Managerのアップグレードまたは構成が要求されていることがDBUAで検出されたものの、リスナーが実行中であることをDBUAで確認できない場合は、前述のいずれの場合でも、デフォルト・リスナーを起動するよう、DBUAから求められます。

  • DBUAを使用してクラスタ・データベースをアップグレードする場合は、CLUSTER_DATABASE初期化パラメータがTRUEに設定されていることを確認する必要があります。

  • データベース・インスタンスが実行されていない場合、DBUAでは、デフォルトの初期化パラメータ・ファイルを使用してインスタンスの起動が試行されます。これが失敗した場合、DBUAから正しい初期化パラメータ・ファイルの名前の指定またはインスタンスの起動を求められます。インスタンスが起動され、実行されている場合、DBUAはそのインスタンスに接続します。

  • アップグレードを停止しても、データベースをリストアしない場合は、新しいOracle Database 11gのサーバーを使用してUPGRADEモードで既存のデータベースを起動するまで、DBUAを再起動できません。データベースをリストアしないかぎり、元のサーバーに戻ることはできません。

    Oracle RACでは、アップグレードを終了したらDBUAを再実行できません。アップグレードを再実行する必要がある場合は、アップグレードするデータベースのリストアされたバックアップからDBUAを実行する必要があります。

  • DBUAを使用せずに手動でデータベースをリストアする場合は、DBUAを起動する前にORACLE_HOME/cfgtoollogs/dbua/logs/ディレクトリにあるWelcome_SID.txtファイルを削除します。このファイルが存在すると、DBUAでは、この操作が再実行操作であると認識されます。

DBUAのGraphical User Interfaceの概要

Oracle Database 11gリリース2(11.2)のインストールで既存のデータベースのアップグレードを指定した場合は、自動的にDBUAが起動されます。ただし、既存のデータベースをアップグレードするように指定しなかった場合は、インストール完了後、DBUAを単独で起動できます。

アップグレードの実行中、DBUAによって、各コンポーネントのアップグレード処理の進行状況が表示されます。DBUAは、詳細なトレース・ログおよびログ・ファイルを書き込み、後で参照するための完全なHTMLレポートを作成します。セキュリティを強化するために、DBUAは、アップグレード後のデータベースで、新しいユーザー・アカウントを自動的にロックします。その後、DBUAは、新しいOracleホームへの新しい構成ファイル(パラメータ・ファイルおよびリスナー・ファイル)の作成へと進みます。

DBUAは、アップグレード前のこれらのすべての手順が完了するまで、アップグレードを開始しません。

次の項では、DBUAに関する追加情報を説明しています。

Oracle DBUAによって実行される確認

DBUAでは、アップグレードの前に次の確認が行われます。

  • 無効なユーザー・アカウントまたはロール

  • 無効なデータ型または無効なオブジェクト

  • サポートされないキャラクタ・セット

  • ロールバック・セグメント、表領域、ディスクの空き領域などのリソースが十分にあること

  • アップグレードに必要なSQLスクリプトの欠落

  • リスナーが実行中であること(Oracle Enterprise Manager Database Controlのアップグレードまたは構成が要求された場合)

  • Oracle DatabaseソフトウェアがDatabase Vaultオプションとリンクされているかどうか


    注意:

    Database Vaultが有効になっている場合は、アップグレードする前にDatabase Vaultを無効にするよう求めるエラーが、DBUAから戻されます。「Oracle Database Vaultを使用しているデータベースのアップグレードの概要」を参照してください。

Oracle DBUAによって起動されるアップグレード・スクリプト

アップグレード時、DBUAは、次に示すように、新しく必要な表領域を自動的に変更または作成し、適切なアップグレード・スクリプトを起動します。

  • データファイルが自動拡張可能で、十分なディスク領域がある場合、DBUAはアップグレードを続行します。

  • データファイルを自動拡張できない場合、ファイルの自動拡張を可能にするようにDBUAから求められます。

  • 表領域が自動拡張可能で、MAXSIZE初期化パラメータに調整が必要な場合、DBUAは同じことを要求して、MAXSIZEパラメータを調整します。

  • 拡張できるディスク容量がない場合、DBUAはユーザーに領域を作成(データファイルを追加)するよう要求します。DBUAは、ファイルの作成場所を指定できないため、新しいデータファイルの追加は行われません。

オプションで、DBUAは必要なすべてのファイルをバックアップします。

DBUAを使用したLinux、UNIXおよびWindowsシステムでのデータベースのアップグレード

DBUAのGraphical User Interfaceを使用してデータベースをアップグレードするには、次の手順を実行します。これらの手順は、「アップグレードする場合の新しいOracle Databaseソフトウェアのインストール」の説明に従って最新のデータベース・ソフトウェアがインストールされた新しいOracleホーム内から実行されます。


重要:

アップグレードを停止しても、データベースをリストアしない場合は、DBUAを再起動できません。そのかわりに、「Oracle Databaseの手動でのアップグレード」.の説明に従って、手動(コマンドライン)によるアップグレードを続行する必要があります。


Linux、UNIXおよびWindowsでDBUAを使用してデータベースをアップグレードするには、次の手順を実行します。

  1. 新しいデータベース・ソフトウェアがインストールされたOracleホームからDBUAを起動します。

    • LinuxまたはUNIXプラットフォームの場合は、Oracle Database 11gリリース2(11.2)のホームでシステム・プロンプトに次のコマンドを入力します。

      dbua
      

      注意:

      通常、dbua実行可能ファイルは、ORACLE_HOME/binディレクトリにあります。

    • Windowsオペレーティング・システムの場合は、「スタート」「プログラム」「Oracle - HOME_NAME「Configuration and Migration Tools」「Database Upgrade Assistant」の順に選択します。

    DBUAの「ようこそ」画面が表示されます。

    dbua01.jpgの説明が続きます
    dbua01.jpgの説明

  2. ヘルプが必要な場合、またはDBUAの詳細を参照する場合は、「ヘルプ」ボタンをクリックしてオンライン・ヘルプを開きます。

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

    「データベースの選択」ページが表示され、アップグレード可能なデータベースがリストされます。

    dbua02.jpgの説明が続きます
    dbua02.jpgの説明

  3. Oracle Database 11gリリース2(11.2)にアップグレードするデータベースを選択します。

    一度に1つのデータベースのみを選択できます。アップグレードするデータベースが表示されない場合は、etcディレクトリにあるoratabファイルにそのデータベース名のエントリが存在することを確認してください。

    SYSDBA権限を所有していないユーザー・アカウントからDBUAを実行している場合は、選択したデータベースに対するSYSDBA権限を有効にするユーザー名およびパスワードの接続情報を入力する必要があります。

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

    DBUAによって、データベースの分析およびアップグレード前のチェックが実行され、必要に応じて警告が表示されます。次に、DBUAによるデータベースのチェックの例を示します。

    • REDOログ・ファイルのサイズが4MB未満である。このようなファイルが検出された場合、DBUAでは、削除して新しいREDOログ・ファイルを作成するオプションが選択できます。

    • 廃止されたか非推奨の初期化パラメータ。

    DBUAでのチェックが終了すると、「アップグレード・オプション」画面が表示されます。

    dbua03.jpgの説明が続きます
    dbua03.jpgの説明

  4. 「アップグレード・オプション」画面では、次のオプションを設定できます。

    アップグレード終了時に無効なオブジェクトを再コンパイル

    アップグレード完了後に、すべての無効なPL/SQLモジュールをDBUAで再コンパイルする場合は、「アップグレード終了時に無効なオブジェクトを再コンパイル」を選択します。

    データベースをOracle Database 11gリリース2(11.2)にアップグレードすると、データベースの多くのPL/SQLモジュールが無効になります。その結果、INVALID状態のすべての既存のPL/SQLモジュール(パッケージ、プロシージャ、タイプなど)を再コンパイルする必要があります。

    デフォルトでは、無効なPL/SQLモジュールは、使用時にOracle Databaseによって再コンパイルされます。モジュールの再コンパイルに時間がかかるため、新しくアップグレードしたデータベースを使用し始めたときに、パフォーマンスが低下する場合があります。

    これらのパフォーマンスの問題を解決するには、アップグレードの終了時に「無効なオブジェクトの再コンパイル」を選択します。このオプションを選択すると、すべての無効なPL/SQLモジュールは、アップグレードの実行直後にDBUAによって再コンパイルされます。こうすることにより、新しくアップグレードしたデータベースを使用し始めたときにパフォーマンスの問題が発生することはなくなります。


    注意:

    「アップグレード終了時に無効なオブジェクトを再コンパイル」を選択すると、ORACLE_HOME/rdbms/adminディレクトリにあるutlrp.sqlスクリプトを実行した場合と同じ操作を行ったことになります。このスクリプトは、ストアドPL/SQLおよびJavaコードの再コンパイルに使用するスクリプトです。

    データベースのすべての無効なPL/SQLモジュールを再コンパイルするタスクは非常に時間がかかり、データベースのアップグレードを完了する時間が長くなる場合があります。複数のCPUがある場合は、使用可能なCPUでパラレル処理を実行してこのタスクを行う時間を短縮できます。複数のCPUが使用可能な場合は、DBUAによって「無効なオブジェクトの再コンパイル」画面にセクションが自動的に追加され、使用可能なCPUの数が自動的に算出されます。

    並列度

    また、無効なPL/SQLモジュールの再コンパイルに使用されるパラレル・プロセスの数を示す、並列度の推奨値もDBUAにより提供されます。具体的には、DBUAにより並列度は使用可能なCPU数-1に設定されます。たとえば、3つのCPUが処理に使用できる場合、DBUAでは、「並列度」メニューから「2」を選択します。このデフォルト値は、「並列度」メニューから新規の値を選択して調整できます。

    データベースのバックアップ

    DBUAでデータベースをバックアップする場合は、「データベースのバックアップ」を選択します。


    重要:

    アップグレードを開始する前に、ご使用のデータベースをバックアップしてください。アップグレード中にエラーが発生した場合は、そのバックアップからデータベースをリストアすることが必要になる可能性があります。


    DBUAを使用してデータベースのバックアップを作成する場合、「バックアップ・ディレクトリ」フィールドで指定したディレクトリにすべてのデータベース・ファイルのコピーが作成されます。このコールド・バックアップは、データベースの停止後、アップグレード・プロシージャの実行前にDBUAにより自動的に実行されます。コールド・バックアップではデータベース・ファイルを圧縮しません。また、バックアップ・ディレクトリは有効なファイル・システム・パスである必要があります。コールド・バックアップ・ファイルにはRAWデバイスは指定できません。

    また、DBUAでは、指定したディレクトリにバッチ・ファイルが作成されます。このバッチ・ファイルは、データベース・ファイルのリストアに使用でき、名前は次のとおりです。

    • Windowsオペレーティング・システムではdb_name_restore.bat

    • LinuxまたはUNIXプラットフォームでは、db_name_restore.sh

    DBUAをバックアップに使用しないことを選択した場合、Oracleでは、データベースは独自のバックアップ手順を使用してバックアップされていると想定されます。


    注意:

    DBUAではOracle ASMデータベースはバックアップされません。ユーザーが手動でバックアップする必要があります。

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

    単一インスタンスのデータベースまたはOracle Express Edition(XE)をアップグレードする場合は、「データベース・ファイルの移動」画面が表示されます。Oracle Real Application Clustersのデータベースをアップグレードする場合は、「データベース・ファイルの移動」画面は表示されません。

    dbua04.jpgの説明が続きます
    dbua04.jpgの説明

  5. 次のいずれかのオプションを選択します。

    • 「アップグレードの一部としてデータベース・ファイルを移動しない」

    • 「アップグレード中にデータベース・ファイルを移動」

    データベース・ファイルの移動を選択した場合は、次のうちのいずれかを選択することも必要です。

    • ファイル・システム

      データベース・ファイルはホストのファイル・システムに移動されます。

    • Oracle Automatic Storage Management(Oracle ASM)

      データベース・ファイルはOracle ASMの記憶域に移動されますが、この記憶域は現在システム上に存在している必要があります。Oracle ASMインスタンスがない場合は、Oracle Grid InfrastructureホームからAutomatic Storage Management Configuration Assistant(ASMCA)を使用してインスタンスを作成し、DBUAを再起動できます。


      関連項目:

      • Oracle ASMのインストールおよび構成の詳細は、『Oracle Grid Infrastructureインストレーション・ガイド』を参照してください。

      • 『Oracle Databaseストレージ管理者ガイド』のASM Configuration Assistantを使用したOracle ASMインスタンスの管理に関する説明


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

      「リカバリおよび診断の場所」画面が表示されます。この画面では、データベースのフラッシュ・リカバリ領域を指定できます。

      dbua05.jpgの説明が続きます
      dbua05.jpgの説明

    フラッシュ・リカバリ領域は、バックアップおよびリカバリに関連するファイルを格納するためのディスクの場所で、Oracleによって管理されます。フラッシュ・リカバリ領域を使用すると、データベース・リカバリ・プロセスのスピード、信頼性および管理性が大幅に向上するため、フラッシュ・リカバリ領域を構成することを強くお薦めします。「管理オプション」画面でローカル管理および日次バックアップを有効にした場合、フラッシュ・リカバリ領域の場所はEnterprise Managerでも使用されます。

    手順5「アップグレード中にデータベース・ファイルを移動」を選択した場合、またはOracle Express EditionデータベースをOracle Enterprise Editionにアップグレードしている場合は、フラッシュ・リカバリ領域を構成する必要があります。フラッシュ・リカバリ領域が現在構成されている場合は現在の設定が保持されますが、この値を上書きできる画面が表示されます。

  6. 次のいずれかを実行します。

    • デフォルトのフラッシュ・リカバリ領域の位置をそのまま使用する。

    • 「フラッシュ・リカバリ領域」フィールドに、別の位置への完全なパスを入力する。

    • 「参照」をクリックして、別のフラッシュ・リカバリ領域の位置を選択する。

    次のいずれかを実行します。

    • フラッシュ・リカバリ領域のデフォルト・サイズをそのまま使用する。

    • 「フラッシュ・リカバリ領域のサイズ」フィールドに、別の値を入力する。

    • 上向き矢印または下向き矢印をクリックして、フラッシュ・リカバリ領域のサイズを調整する。


    関連項目:

    フラッシュ・リカバリ領域の構成の詳細は、『Oracle Database 2日でデータベース管理者』を参照してください。

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

    Enterprise Managerで監視中のデータベースが他にない場合は、「管理オプション」画面が表示されます。

    dbua06.jpgの説明が続きます
    dbua06.jpgの説明

    「管理オプション」画面には、データベースをEnterprise Managerで管理できるように設定するオプションがあります。Enterprise Managerには、Oracle環境全体を管理するための集中管理ツールのみでなく、個々のデータベース・インスタンス(複数のデータベース、ホスト、アプリケーション・サーバー、その他のネットワーク・コンポーネントなど)を管理するためのWebベースの管理ツールが用意されています。

    Oracle Enterprise Manager Grid Controlでデータベースを登録できるようにするには、ホスト・コンピュータ上で事前にOracle Enterprise Manager Agentを構成する必要があります。

  7. Enterprise Managerを使用してデータベースを管理するように設定するには、「Enterprise Managerによるデータベースの構成」を選択してから次のいずれかのオプションを選択します。

    • 集中管理用にGrid Controlに登録

      このオプションを選択した場合は、「管理サービス」ドロップダウン・リストからOracle Management Serviceを選択することも必要です。DBUAを実行すると、ホスト・コンピュータにOracle Management Agentがインストールされているかどうかがチェックされます。Oracle Management Agentが見つからなかった場合、Grid Controlオプションは選択できません。

      Oracle Databaseソフトウェアのインストールを終了すると、データベースは自動的にOracle Enterprise Manager Grid Control内の管理ターゲットとして使用可能になります。

    • ローカル管理用にDatabase Controlを構成

      Oracle環境を集中管理していない場合も、Enterprise Managerを使用してデータベースを管理できます。Oracle Databaseをインストールすると、Oracle Enterprise Manager Database Controlが自動的にインストールされ、インストール中の単一インスタンスまたはクラスタ・データベースを監視および管理するWebベース機能が提供されます。

      指定した条件のメトリックがクリティカルしきい値または警告しきい値に達したときに、SYSMANユーザー(デフォルトのスーパー管理者およびManagement Repositoryのスキーマの所有者)で電子メール通知を受信するように設定する場合は、次の手順を実行します。

      • 「アラート通知の有効化」を選択します。

      • 通知に使用する電子メール・サーバーの名前を「送信メール(SMTP)サーバー」フィールドに入力します。

      • SYSMANユーザーの電子メール・アドレスを「受信者の電子メール・アドレス」フィールドに入力します。

      たとえば、Enterprise Managerは、ターゲットが停止した場合またはデータベースで領域使用率の問題が発生した場合に電子メールを送信できます。電子メール通知は、インストールするとすぐに有効になります。

      最小の構成でデータベース全体をバックアップするためにOracle推奨のバックアップ計画を使用するには、次の手順を実行します。

      • 「リカバリ領域への日次ディスク・バックアップの有効化」を選択します。

      • 「バックアップ開始時間」フィールドに、開始時間を入力します。

      • 「OSユーザー名」フィールドおよび「パスワード」フィールドに、ホスト資格証明を入力します。

      「リカバリ領域への日次ディスク・バックアップの有効化」オプションを選択した場合は、Oracle Databaseのアップグレードが終了した直後にデータベースがバックアップされるように、Enterprise Managerが構成されます。Enterprise Managerでは、フラッシュ・リカバリ領域にデータベースがバックアップされます。後で、Enterprise Managerを使用してバックアップ計画をカスタマイズできます。

      Windowsでは、バックアップ用に資格証明を入力する対象となるユーザーは、Windowsのローカル・セキュリティ・ポリシーでバッチ ジョブとしてログオン権限を付与されている必要があります。選択したユーザーがこの権限を持っていない場合、バックアップ・ジョブは失敗します。

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

    「データベース資格証明」画面が表示されます。

    dbua07.jpgの説明が続きます
    dbua07.jpgの説明

  8. 次のいずれかのオプションを選択します。

    • 「別のパスワードを使用」

      別のパスワードを使用することを選択した場合は、表内の各アカウントの「パスワード」および「パスワードの確認」列に、パスワードを入力する必要があります。

    • 「すべてのアカウントに同じパスワードを使用」

      同じパスワードを使用することを選択した場合は、「パスワード」および「パスワードの確認」フィールドにパスワードを入力する必要があります。


      注意:

      Oracle Database 11gリリース2(11.2)のデフォルトのセキュリティ設定が適用されている場合、新しいパスワードは8文字以上にする必要があり、welcomeoracleなどのパスワードは使用できません。詳細は、『Oracle Databaseセキュリティ・ガイド』を参照してください。

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

    「サマリー」画面が表示されます。

    dbua08.jpgの説明が続きます
    dbua08.jpgの説明

  9. アップグレードを開始する前に、アップグレードに関する次の情報が「サマリー」画面に表示されます。

    • 名前、バージョン、および古いデータベースと新しいデータベースのOracleホーム

    • データベースのバックアップ位置、使用可能な領域、および必要な領域

    • 無視された警告

    • アップグレード対象のデータベース・コンポーネント

    • 初期化パラメータの変更

    • データベース・ファイルの位置

    • リスナー登録


    関連項目:

    アップグレード後のCOMPATIBLE初期化パラメータの設定の詳細は、「COMPATIBLE初期化パラメータの設定」を参照してください。

    すべての指定内容を確認します。続いて、次のいずれかを実行します。

    • 設定内容が間違っている場合は、その設定を修正できる画面が表示されるまで「戻る」をクリックします。

    • すべて正しい場合は、「終了」をクリックします。

    「進行」画面が表示され、DBUAでアップグレードが開始されます。

  10. アップグレードが完了した後、「進行」画面に次のメッセージが表示されます。

    Upgrade is complete. Click "OK" to see the results of the upgrade.
    
  11. 「アップグレード結果」画面には、元のデータベースおよびアップグレードしたデータベースについての説明と、初期化パラメータに対して行われた変更が表示されます。この画面には、アップグレード後に様々なログ・ファイルが格納されるディレクトリも表示されます。これらのログ・ファイルを調べて、アップグレード処理の詳細を確認できます。


    注意:

    HTML版のアップグレード結果も、ログ・ファイル・ディレクトリに保存されます。

    1. 「データベース・パスワードの構成」をクリックして、「パスワード管理」ダイアログ・ボックスを表示します。

      「パスワード管理」ダイアログ・ボックスを使用して、データベースをアップグレードした後のユーザーのデフォルトのパスワードを変更できます。セキュリティ上の理由から、次のユーザーを除くすべてのユーザーがロックされます。

      • SYS

      • SYSTEM

      Enterprise Managerで「ローカル管理」を有効にしている場合は、SYSMANおよびDBSNMPアカウントもロック解除されます。これらのアカウントによって、Enterprise Managerにデータベースへのアクセスが提供され、Enterprise Managerを使用して監視データを収集し、管理タスクを実行できるようになります。

      Enterprise Managerで「集中管理」を有効にしている場合は、SYSおよびSYSTEMユーザー・アカウントに加えて、DBSNMPアカウントもロック解除されます。


      注意:

      データベースの不正な使用を防止するために、データベースをアップグレードした直後にすべてのユーザー・パスワードを変更することをお薦めします。

      Oracle Database 11gリリース2(11.2)のデフォルトのセキュリティ設定が適用されている場合、パスワードは8文字以上にする必要があり、welcomeoracleなどのパスワードは使用できません。詳細は、『Oracle Databaseセキュリティ・ガイド』を参照してください。


    2. アップグレード結果に問題がある場合は、「データベースのリストア」をクリックします。

      データベースのバックアップに使用した方法によって、「リストア」オプションでは、次のいずれかのタスクが実行されます。

      • DBUAを使用してデータベースをバックアップした場合は、「リストア」をクリックすると、元のデータベースおよび元のデータベースの設定がバックアップからリストアされます。

      • 独自のバックアップ・プロシージャを使用してデータベースをバックアップした場合は、元のデータベースの設定のみがリストアされます。データベース自体をリストアするには、独自のバックアップ・ユーティリティを使用して作成したバックアップをリストアする必要があります。

    アップグレード結果に問題がない場合は、「終了」をクリックしてDBUAを終了し、新しくアップグレードしたデータベースを使用します。

    1. DBUAによって、次のいずれかの方法でOracle Databaseのlistener.oraファイル内のアップグレードされたデータベースのSID_DESCエントリが変更されます。

      単純な場合: 古いlistener.oraに次のSID_DESCエントリがあるとします。

      ...
         (SID_DESC =
            (SID_NAME = ORCL)
         )
      ...
      

      データベース名がSAL、ドメイン名がCOM、Oracleホームが/oracle/product/9.2の場合、次のエントリが追加されます。

      ...
         (SID_DESC =
             (GLOBAL_DBNAME = sal.com)
                (ORACLE_HOME = /oracle/product/9.2)
                (SID_NAME = SAL)
          )
      ...
      

      複雑な場合: 古いlistener.oraに次のSID_DESCエントリがあるとします。

      ...
         (SID_DESC =
             (GLOBAL_DBNAME = an_entry)
             (SID_NAME = ORCL)
          )
      ...
      

      an_entryが移行されたデータベースのGLOBAL_DBNAMEと一致せず、データベース名がSAL、ドメイン名がCOM、Oracleホームが/oracle/product/9.2の場合、次のエントリが追加されます。

      ...
         (SID_DESC =
             (GLOBAL_DBNAME = sal.com)
                (ORACLE_HOME = /oracle/product/9.2)
                (SID_NAME = SAL)
          )
      ...
      

      このエントリは単純な場合のエントリと同じですが、DBUAでも初期化パラメータ・ファイルのSERVICE_NAMESパラメータにエントリan_entryが追加されます。したがって、DBUAでは次のようにSERVICE_NAMESパラメータが変更されます。

      SERVICE_NAMES = sal.com, an_entry
      
    2. DBUAによって、古いlistener.oraファイルからアップグレードされたデータベースのエントリが削除されます。

    3. DBUAによって、新旧両方のOracle Database環境で、listener.oraファイルが再ロードされます。

  12. >>2007年3月26日に行われたRavi PattabhiによるIOUGのプレゼンテーションのとおり、次の手順については、画面が表示されなくなったか、または同じ画面を説明する手順のリライト版に置き換えられたために削除されています。CBF(2007年3月30日)

    作成するすべての新しいOracle Database 11gリリース1(11.1)データベースに自動的に追加されるSYSAUX表領域の属性を指定します。


    関連項目:

    SYSAUX表領域の詳細は、『Oracle Database管理者ガイド』を参照してください。

    SYSAUX表領域の属性の多くは、自動的に設定され、変更できません。たとえば、SYSAUX表領域は、自動セグメント領域管理を使用するように設定されます。ただし、データ・ファイルの場所、SYSAUX表領域のデフォルト・サイズおよびその自動拡張属性を指定できます。


    注意:

    SYSAUX表領域の既存のデータ・ファイルを指定する場合、「既存ファイル名の再利用」を選択する必要があります。選択しない場合、DBUAからファイルが現在存在することが通知されます。

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

    「無効なオブジェクトの再コンパイル」画面が表示されます。

  13. Enterprise Managerアカウントのパスワードでデータベースを保護します。リストされたEnterprise Managerユーザー・アカウントのそれぞれに適用される単一のパスワードを設定するか、または各ユーザーに一意のパスワードを提供することによってアカウントのセキュリティを強化できます。

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

    「リカバリ構成」画面が表示されます。

  14. フラッシュ・リカバリ領域を指定し、アーカイブを有効にします。データベースを管理する場合、システム障害時にデータをリカバリできるようにデータベースを構成することが重要です。

    フラッシュ・リカバリ領域を使用して、システム障害時に失われたデータをリカバリできます。「管理オプション」画面でローカル管理および日次バックアップを有効にした場合、この場所はEnterprise Managerでも使用されます。

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

    「ネットワーク構成」画面が表示されます。

  15. 「アップグレード操作」ページで、次のいずれかを実行します。

    • Oracle ASMインスタンスのみをアップグレードするオプションを選択します。

    • データベースをアップグレードするオプションを選択します。

      データベースをアップグレードする方法を選択し、データベースでOracle ASMが使用されている場合は、DBUAからデータベースとともにOracle ASMインスタンスをアップグレードするかどうかを確認されます。データベースとOracle ASMは、別々のDBUAセッションで別々のOracleホームにアップグレードすることをお薦めします。

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

    「データベース・インスタンスの選択」画面が表示されます。

  16. 「デフォルトの動作の変更」画面に、以前のリリースからOracle Database 11gリリース1(11.1)で変更された動作がDBUAにより表示されます。初期化パラメータのデフォルト値が変更された場合もあります。その他の場合、現在のスクリプトまたはアプリケーションに影響を及ぼす可能性がある新しい動作や要件が導入されました。

  17. 第4章「Oracle Databaseのアップグレード後の作業」に示す手順を実行します。

オプションでのインプレース・アップグレードの実行(同じOracleホームへ)

Oracle Database 11g R2(11.2)にアップグレードする場合は、新しいソフトウェアが新しいOracleホームにインストールされるアウトオブプレース・モードのアップグレードを実行することをお薦めします。つまり、新しいアップグレード用に別のOracleホームの場所を指定します。ただし、同じOracleホームを保持するインプレース・アップグレードを実行する必要がある場合もあります。この項では、既存のOracleホームを保持する方法について説明します。

インプレース・アップグレードを実行する場合の考慮点およびオプションについては、次の項で説明します。

インプレース・アップグレードを開始する際の既知の問題

同じOracleホームの場所を使用してインプレース・アップグレードを実行すると、指定された場所にOracle Databaseソフトウェアが含まれていることがインストーラによって検出されたことを知らせるエラー・メッセージが表示されます。

メッセージ: インストーラにより、指定されたソフトウェアの場所にOracle Databaseソフトウェア・リリース11.2.0.1が含まれていることが検出されました。アップグレードの際は、新規のOracleホームにソフトウェアのアウトオブプレース・インストールを行ってから、新しいソフトウェア・バイナリを使用してデータベースをアップグレードすることをお薦めします。

原因: インストーラにより、指定されたソフトウェアの場所にOracle Databaseソフトウェア・リリース11.2.0.1が含まれていることが検出されました。

対処: この項の説明に従ってインプレース・アップグレードを実行するか、または「アップグレードする場合の新しいOracle Databaseソフトウェアのインストール」の説明に従って新しいOracleホームへのアウトオブプレース・アップグレードを実行します。

単一インスタンスOracle Databaseのインプレース・アップグレードの実行

インプレース・アップグレードを実行する必要がある場合は、次の手順に従って、現在のインストールのバックアップを作成し、そのバックアップを別の場所に移動してから、古い場所に新しいソフトウェアをインストールします。


警告:

既存のOracleホームを使用してOracle Databaseをリリース11.2.0.2または11.2.0.3にアップグレードしないことを強くお薦めします。この手順は、何らかの理由で既存のOracleホームを使用する以外に選択の余地がない場合にのみ使用します。


単一インスタンスのデータベースのインプレース・アップグレードを実行するには、次の手順を実行します。

  1. My Oracle Support(https://support.oracle.com/)からOracle Databaseリリース11.2ソフトウェアを入手します。

  2. 次のディレクトリのバックアップを作成することによって、構成データをバックアップします。

    • ORACLE_HOME/dbs

    • ORACLE_HOME/network/admin

    • ORACLE_HOME/owb/bin/admin

    • ORACLE_HOME/hostname_dbname

    • ORACLE_HOME/oc4j/j2ee/OC4J_DBConsole_hostname_dbname

  3. アップグレード元のリリースに応じて、リリース11.2.0.1または11.2.0.2ソフトウェアの場所から、次のコマンドでORACLE_HOMEデタッチします。

    ORACLE_HOME/oui/bin/runInstaller -detachHome ORACLE_HOME=11.2.x.x.x software location
    
  4. このORACLE_HOMEソフトウェア・ディレクトリを一時的な名前に変更するか、または移動します。

    mv ORACLE_HOME ORACLE_HOME.backup
    
  5. OUIを起動し、リリース11.2.0.3を選択します。ソフトウェアのみです。

  6. 「場所」で、アップグレード元のリリースに応じてリリース11.2.0.1または11.2.0.2に使用されているのと同じ場所を選択します。

  7. インストールの完了後、古いOracleホームの構成データをリストアします。/dbsおよびnetwork/adminに対して作成したバックアップから、バックアップ済の構成データ・ファイルをリストアし、さらに/hostname_dbname/owb/bin/adminおよび/oc4j/j2ee/OC4J_DBConsole_hostname_dbnameディレクトリもリストアします。hostname_dbnameには実際の名前を指定します(hostnameは実際のホスト名で、dbnameは実際のデータベース名です)。

  8. ORACLE_HOME/binディレクトリからDBUAを実行し、11.2.0.1.0または11.2.0.2.0データベース・インスタンスを選択して11.2.0.3.0へのアップグレードを実行します。


関連項目:

  • ご使用のオペレーティング・システムの『Oracle Databaseインストレーション・ガイド』

  • 『Oracle Databaseインストレーション・ガイドfor Linux』

  • 『Oracle Universal InstallerおよびOPatchユーザーズ・ガイド』


Oracle RACデータベースのインプレース・アップグレードの実行

Oracle RACデータベースのインプレース・アップグレードの実行は、「単一インスタンスOracle Databaseのインプレース・アップグレードの実行」で説明している手順に似ています。次の手順に従って、現在のOracleホームおよびインストールのバックアップを作成し、それらを別の場所に移動してから、古い場所に新しいソフトウェアをインストールします。


警告:

既存のOracleホームを使用してOracle Databaseをリリース11.2.0.2以降にアップグレードしないことを強くお薦めします。この手順は、何らかの理由で既存のOracleホームを使用する以外に選択の余地がない場合にのみ使用します。


Oracle RACデータベース・インスタンスのインプレース・アップグレードを実行するには、次の手順を実行します。

  1. すべてのクラスタ・ノードで次のディレクトリのバックアップを作成することによって、構成データをバックアップします。

    • ORACLE_HOME/dbs

    • ORACLE_HOME/network/admin

    • ORACLE_HOME/owb/bin/admin

    • ORACLE_HOME/hostname_dbname

    • ORACLE_HOME/oc4j/j2ee/OC4J_DBConsole_hostname_dbname

  2. 各ノードで次のコマンドを実行して、古いOracle RACのORACLE_HOMEをデタッチします。次に例を示します。

    ORACLE_HOME/oui/bin/runInstaller -detachHome ORACLE_HOME=11.2 software location
    
  3. すべてのノードでこのOracle RACのORACLE_HOMEディレクトリの名前を一時的な名前に変更します。

  4. Oracle Databaseソフトウェアのみをすべてのノードにインストールします。

  5. すべてのノードで、11.2.0.4ソフトウェアの場所ORACLE_HOMEに、/dbsおよびnetwork/adminに対して行ったバックアップからバックアップ済の構成データ・ファイルをリストアし、さらに/hostname_dbname/owb/bin/adminおよび/oc4j/j2ee/OC4J_DBConsole_hostname_dbnameディレクトリもリストアします。hostname_dbnameに対しては実際の名前を指定します。

  6. ローカル・ノードで11.2.0.4のORACLE_HOME/binディレクトリからDBUAを実行し、Oracle RACデータベース・インスタンスを選択してリリース11.2.0.4.0にアップグレードします。

Windowsでのインプレース・アップグレード

新しいOracleホームへのアウトオブプレース・アップグレードを実行することをお薦めします。この手順は、何らかの理由で古いOracleホームを使用する必要がある場合にのみ使用します。

次の項では、Windowsプラットフォーム上で既存のOracleホームへのアップグレードを実行する方法について説明します。


重要:


WindowsプラットフォームでのOracle Databaseのインプレース・アップグレードに関する考慮点

Windowsでは、Oracleファイルを起動またはロックするすべてのサービスを停止する必要があります。そのためには、Windowsサービス・マネージャでそのサービスを無効に設定します。サービスを無効にした後に、ロックされている関連オブジェクトを解放するために再起動が必要になる場合もあります。Windowsプラットフォームでは、ORADIMがWindowsサービス(オペレーティング・システムのプロセス)を管理します。DBCAは、Oracle Databaseインスタンスおよびデータベース・サービスを管理します。


関連項目:

『Oracle Databaseプラットフォーム・ガイドfor Microsoft Windows』

WindowsでのOracle Databaseのインプレース・アップグレードの実行

この手順は、新しいOracle Database 11gリリース2(11.2)にアップグレードする際に、古いOracleホームを使用する以外に選択の余地がない場合にのみ使用します。これは、Oracle Databaseをリリース11.2にアップグレードする場合の推奨方法ではありません。インプレース・アップグレードを実行する必要がある場合は、この項で示す手順を実行する必要があります。この手順では、現在のインストールをバックアップし、現在のインストールを新しい場所に移動してから、古い場所に新しいソフトウェアをインストールする方法を説明します。


警告:

既存のOracleホームを使用してOracle Databaseをリリース11.2.0.2以降にアップグレードしないことを強くお薦めします。この手順は、何らかの理由で既存のOracleホームを使用する以外に選択の余地がない場合にのみ使用します。


Windowsでインプレース・アップグレードを実行するには、次の手順を実行します。

  1. 単一ノードまたはすべてのクラスタ・ノードで次のディレクトリをバックアップすることによって、構成データのバックアップを作成します。

    • ORACLE_HOME/dbs

    • ORACLE_HOME/database

    • ORACLE_HOME/network/admin

    • ORACLE_HOME/owb/bin/admin

    • ORACLE_HOME/hostname_dbname

    • ORACLE_HOME/oc4j/j2ee/OC4J_DBConsole_hostname_dbname

  2. 単一インスタンス・データベースをアップグレードする場合は、この手順をスキップします。Oracle RACデータベースをアップグレードする場合、Oracle Database 11gリリース2(11.2)のソフトウェアをインストールするには、まずOracle Clusterwareをアップグレードする必要があります。「Oracle ClusterwareおよびOracle ASMインスタンスのアップグレードに関する考慮点」を参照してください。

  3. ORACLE_HOMEで実行されているインスタンスを停止します。

    SQL> SHUTDOWN IMMEDIATE
    

    注意:

    Oracle RACデータベースでは、すべてのノードでデータベース・インスタンスを停止し、クラスタ内のすべてのノードで妨げになるすべてのサービスを停止する必要があります。

  4. すべてのインスタンスで、NET STOPを使用して、このOracleホームに影響を与える可能性のあるOracleサービスを停止します。次に例を示します。

    C:\> NET STOP OracleServiceORACLE_SID
    
    
    

    ここで、OracleServiceはサービスの名前で、ORACLE_SIDはデータベース・インスタンスのSIDです。

    停止を必要とする可能性のあるOracleサービスは次のとおりです。

    • TNSListener

    • HTTPサーバー

    • Oracle Management Server

    • OLAP Agent

    • Intelligent Agent


    関連項目:

    My Oracle Support(https://support.oracle.com)
    • 11.2.0.2および11.2.0.3に関する詳細は、Note ID 1291682.1「In-Place Upgrade to 11.2.0.2 on Windows Platform」を参照してください。

    • 影響を与えるプロセスによってロックされるファイルの詳細は、Note ID 294350.1「Write Errors, or Files In Use, or NoServicesForProcessException During Patch Installation」を参照してください。

    • ORADIMを使用したデータベース・インスタンスの管理の詳細は、『Oracle Databaseプラットフォーム・ガイドfor Microsoft Windows』を参照してください。



    注意:

    停止するサービスのリストは含まれていません。停止する必要があるWindows固有およびベンダー固有のサービスが存在する場合もあります。

  5. 各ノードで次のコマンドを実行して、このOracle RACのORACLE_HOMEをデタッチします。

    ORACLE_HOME/oui/bin/setup -detachHome ORACLE_HOME=this software location
    
  6. すべてのノードでこのOracle RACのORACLE_HOMEディレクトリの名前を一時的な名前に変更します。

  7. すべてのノードでリリース11.2.0.3のソフトウェアのみをインストールします。

  8. 必要に応じて、ORADIMを使用して新しいインスタンスを作成します。

    C:\oracle\bin\oradim –NEW -SID ORACLE_SID
    
    
    

    ORACLE_SIDは、データベース・インスタンスのSIDです。これにより、アップグレードするインスタンスをDBUAでリストできるようになります。


    関連項目:

    ORADIMを使用したインスタンスの作成の詳細は、『Oracle Databaseプラットフォーム・ガイドfor Microsoft Windows』を参照してください。

  9. すべてのノードで、このソフトウェアの場所ORACLE_HOMEに、/dbs/databaseおよびnetwork/adminに対して行ったバックアップからバックアップ済の構成データ・ファイルをリストアし、さらに/hostname_dbname/owb/bin/adminおよび/oc4j/j2ee/OC4J_DBConsole_hostname_dbnameディレクトリもリストアします。hostname_dbnameに対しては実際の名前を指定します。

  10. ローカル・ノードでこのORACLE_HOME/binディレクトリからDBUAを実行します。Oracle RACデータベースをアップグレードする場合、11.2.0.1.0または11.2.0.2.0 Oracle RACデータベース・インスタンスを選択してリリース11.2.0.3.0にアップグレードします。


関連項目:

データベースのインストール後のタスクの詳細は、『Oracle Databaseプラットフォーム・ガイドfor Microsoft Windows』を参照してください。

サイレント・モードのDBUAを使用したOracle Databaseのアップグレード

-silentコマンドライン・オプションを使用してDBUAを起動すると、DBUAはサイレント・モードで動作します。サイレント・モードでは、DBUAのユーザー・インタフェースは表示されません。また、情報、エラー、警告を含むすべてのメッセージは、ORACLE_HOME/cfgtoollogs/dbua/SID/upgradenにあるログ・ファイルに書き込まれます(nは、このアップグレードの時点でDBUAが実行したアップグレードの回数です)。

サイレント・モードのDBUAを使用してデータベースをアップグレードするには、次の手順を実行します。 

  • 次のコマンドを発行します。

    dbua -silent -sid ORCL &
    

    この例では、データベースの名前はORCLです。

サイレント・モード時のOracle DBUAのコマンドライン・オプション

Database Upgrade Assistant(DBUA)では、サイレント・モードで実行する場合のコマンドライン・オプションがサポートされています。表3-3に、DBUAでサポートされている様々なオプションおよび対応するパラメータを示します。


注意:

Oracle Database 11gリリース2(11.2)のデフォルトのセキュリティ設定が適用されている場合、パスワードは8文字以上にする必要があり、welcomeoracleなどのパスワードは使用できません。詳細は、『Oracle Databaseセキュリティ・ガイド』を参照してください。

表3-3 DBUAのコマンドライン・オプション

オプション 説明

-silent

DBUAがサイレント・モードで動作するように指定します。

-sid SID

アップグレードするデータベースのシステム識別子(SID)を指定します。

-oracleHome home_name

アップグレードするデータベースのOracle Databaseホーム・ディレクトリを指定します。

-oracleBase base_name

アップグレードするデータベースのOracle Databaseベース・ディレクトリを指定します。

-diagnosticDest diagnostic_destination

Oracleトレース・ファイルおよび診断ファイルを保存するデフォルトの場所を指定します。これにより、バックグラウンド・ダンプ保存先およびユーザー・ダンプ保存先の初期化パラメータ設定が、前のリリースの設定から置き換わります。

-sysDBAUserName SYSDBA_user

SYSDBA権限を持つユーザーを指定します。

-sysDBAPassword SYSDBA_pwd

SYSDBA_userのパスワードを指定します。

-autoextendFiles

アップグレード中にデータベース・ファイルの自動拡張を行います。データ・ファイルはアップグレードの後で元の自動拡張設定に戻ります。

-newGlobalDbName db_name

新しいグローバル・データベース名を指定します。このオプションは、データ・ファイルを移動する場合、またはOracle XEデータベースをアップグレードする場合にのみ適用されます。

-newSid new_SID

アップグレードするデータベースの新しいシステム識別子(SID)を指定します。このオプションは、データ・ファイルを移動する場合、またはOracle XEデータベースをアップグレードする場合にのみ適用されます。

-upgradeTimezone

データベースのタイムゾーン・ファイルのバージョンをアップグレードします。

-generateMapFile

データ・ファイルを移動する場合、またはOracle XEデータベースをアップグレードする場合にのみ適用されます。このオプションを指定した場合、DBUAではログの場所にデータベース・マップ・ファイルのみが生成されて、終了します。

-useASM

データ・ファイルを移動する場合、またはOracle XEデータベースをアップグレードする場合にのみ適用されます。アップグレードするデータベースにOracle ASMインスタンスがある場合、そのインスタンスを使用してアップグレードを実行するように、このオプションでDBUAに指定します。

-commonFileLocation common_files

データベース・ファイルを格納するための共通の位置を指定します。このオプションは、データ・ファイルを移動する場合、またはOracle XEデータベースをアップグレードする場合にのみ適用されます。

-omfLocation omf_area

Oracle Managed Files用のデータベース領域を指定します。このオプションは、データ・ファイルを移動する場合、またはOracle XEデータベースをアップグレードする場合にのみ適用されます。

-databaseMapFile map_file_name

データベース・ファイルをマップするためのマップ・ファイルの完全名を指定します。このオプションは、データ・ファイルを移動する場合、またはOracle XEデータベースをアップグレードする場合にのみ適用されます。

-newRecoveryArea recover_area

アップグレード中に移動されるデータベース用のリカバリ領域を指定します。このオプションは、データ・ファイルを移動する場合、またはOracle XEデータベースをアップグレードする場合にのみ適用されます。

-newRecoveryAreaSize recover_size

アップグレード中に移動されるデータベース用のリカバリ領域のサイズをMB単位で指定します。このオプションは、データ・ファイルを移動する場合、またはOracle XEデータベースをアップグレードする場合にのみ適用されます。

-apexAdminPassword apex_pwd

Application Express管理者のパスワードを指定します。

-disableUpgradeScriptLogging

アップグレード時に実行しているSQLスクリプトの詳細ログの生成を無効にします。このオプションは、デフォルトでは有効になっています。ログ生成を有効にする場合は、このオプションを指定しないでください。

-backupLocation directory

アップグレードを開始する前にデータベースをバックアップするディレクトリを指定します。

-sysauxTablespace

新しいSYSAUX表領域を作成します。

-datafileName name

新しいSYSAUX表領域を作成するデータ・ファイルの完全なパスを指定します。

-datafileSize size

新しいSYSAUX表領域を作成するデータ・ファイルのサイズを指定します(500MB、10GB)。

-datafileSizeNext size

データ・ファイルの次のエクステントを指定します。

-datafileSizeMax size

データ・ファイルの最大サイズを指定します。

-postUpgradeScripts script [, script ] ...

SQLスクリプトを、カンマで区切ったリストにして指定します。完全なパス名を指定します。このスクリプトはアップグレードの終了時に実行されます。

-initParam parameter=value [, parameter=value ] ...

name=valueという形式の初期化パラメータ値を、カンマで区切ったリストにして指定します。

-disableArchiveLogMode

アップグレード中のアーカイブおよびフラッシュバック・ロギングをオフにします。

-recompile_invalid_objects true|false

このオプションをTRUEにすると、すべての無効なPL/SQLモジュールが、アップグレードの実行直後にDBUAによって再コンパイルされます。

-degree_of_parallelism cpu_number

パラレル再コンパイルに使用するCPUの数を指定します。


-emConfiguration
{CENTRAL|LOCAL|ALL|NOBACKUP|
NOEMAIL|NONE}

Oracle Enterprise Managerの管理オプションを指定します。

  • CENTRAL: データベースはOracle Enterprise Managerによって集中管理されます。

  • LOCAL: データベースはOracle Enterprise Managerによってローカル管理されます。

  • ALL: Oracle Enterprise Manager Database Controlの構成、日次バックアップの有効化、および電子メール通知の有効化を行うオプションです。

  • NOBACKUP: データベースの自動日次バックアップは有効化されません。

  • NOEMAIL: 電子メール通知が有効にされません。

  • NONE: データベースの管理はEnterprise Managerで行われません。

-dbsnmpPassword password

DBSNMPユーザー・パスワードを指定します。このオプションは、Oracle Enterprise Managerを構成する場合にのみ適用されます。

-sysmanPassword password

SYSMANユーザー・パスワードを指定します。このオプションは、Oracle Enterprise Managerを構成する場合にのみ適用されます。

-asmPassword password

Oracle ASMインスタンス用のSYSパスワードを指定します。このオプションは、Oracle Enterprise Managerを構成する場合にのみ適用されます。

-hostUserName hostname

Oracle Enterprise Managerのバックアップ・ジョブ用のホスト・ユーザー名を指定します。このオプションは、Oracle Enterprise Managerを構成する場合にのみ適用されます。

-hostUserPassword password

Oracle Enterprise Managerのバックアップ・ジョブ用のホスト・ユーザーのパスワードを指定します。このオプションは、Oracle Enterprise Managerを構成する場合にのみ適用されます。

-backupSchedule hh:mm

hh:mm(時間および分)の形式で日次バックアップ・スケジュールを指定します。このオプションは、Oracle Enterprise Managerを構成する場合にのみ適用されます。

-smtpServer server_name

電子メール通知用の送信メール・サーバー(SMTP)を指定します。このオプションは、Oracle Enterprise Managerを構成する場合にのみ適用されます。

-emailAddress address

電子メール通知用の電子メール・アドレスを指定します。このオプションは、Oracle Enterprise Managerを構成する場合にのみ適用されます。

-centralAgent location

Oracle Enterprise Managerの中央エージェントの場所を指定します。このオプションは、Oracle Enterprise Managerを構成する場合にのみ適用されます。

-recoveryAreaDestination directory

すべてのリカバリ・ファイルの宛先ディレクトリを指定します。このオプションが適用されるのは、データ・ファイルを移動する場合、Oracle XEデータベースをアップグレードする、またはOracle Enterprise Managerを構成する場合のみです。

[-localRacSid SID

クラスタ・データベースがOracle Cluster Registryに登録されていない場合は、クラスタ・データベースのローカルSIDを指定します。

-h | -help

DBUAのヘルプを表示します。


サイレント・モード時のDBUAのコマンドライン構文

次の構文を使用して、すべての有効なオプションをコマンドラインから指定できます。

dbua [ -silent ] [ -sid SID ] [-oracleHome home_name] [-oracleBase base_name]
[-diagnosticDest diagnostic_destination]
[-sysDBAUserName SYSDBA_user] [-sysDBAPassword SYSDBA_pwd]
[-upgradeASM] [-autoextendFiles] [-newGlobalDbName db_name] [-newSid new_SID]
[-generateMapFile] [-useASM] [-commonFileLocation common_files]
[-omfLocation omf_area] [-databaseMapFile map_file_name]
[-newRecoveryArea recover_area] [-newRecoveryAreaSize recover_size]
[-apexAdminPassword apex_pwd] [-disableUpgradeScriptLogging ] 
[-backupLocation directory]
[-sysauxTablespace -datafileName name -datafileSize size 
  -datafileSizeNext size -datafileSizeMax size]
[-postUpgradeScripts script [, script ] ... ]
[-initParam parameter=value [, parameter=value ] ... ]
[-disableArchiveLogMode] [-recompile_invalid_objects true | false]
[-degree_of_parallelism cpu_number]
[-emConfiguration {CENTRAL|LOCAL|ALL|NOBACKUP|NOEMAIL|NONE}
  -dbsnmpPassword password -sysmanPassword password -asmPassword password 
  -hostUserName hostname -hostUserPassword password -backupSchedule hh:mm
  [-smtpServer server_name -emailAddress address]
  [-centralAgent location] [-localRacSid SID]]
[-recoveryAreaDestination directory] [-h|-help]

Oracle Databaseの手動でのアップグレード

DBUAを使用するかわりに手動でOracle Databaseをアップグレードする必要がある場合があります。「アップグレードする場合の新しいOracle Databaseソフトウェアのインストール」の説明に従って新しいOracle Databaseソフトウェアをインストールして、データベースのバックアップを作成し、新しいOracleホームを準備したら、手動アップグレードに進むことができます。データベースの手動アップグレードの手順では、「アップグレード前情報ツールの使用」で説明したアップグレード前情報ツールが前に実行されていることが前提となっています。

次の項では、手動でアップグレードを実行する手順について説明します。

手動アップグレードを行う場合のOracle Databaseのバックアップ

アップグレード前情報ツールを実行し、正常にインスタンスを停止した後、この項の説明に従ってデータベースをバックアップすることをお薦めします。アップグレードの問題が発生した場合、アップグレードをすべて中止するには、このバックアップからデータベースをリストアする必要があります。そのため、予防措置として、ここでデータベースをバックアップすることをお薦めします。

アップグレード対象のデータベースの全体バックアップを実行するには、次の手順を実行します。

  1. RMANにサインオンします。

    rman "target / nocatalog"
    
  2. 次のRMANコマンドを発行します。

    RUN
    {
        ALLOCATE CHANNEL chan_name TYPE DISK;
        BACKUP DATABASE FORMAT 'some_backup_directory%U' TAG before_upgrade;
        BACKUP CURRENT CONTROLFILE FORMAT 'controlfile location and name';
    }
    

関連項目:

『Oracle Databaseバックアップおよびリカバリ・ユーザーズ・ガイド』

手動アップグレードを行う場合の新しいOracleホームの準備

アップグレードするデータベースをバックアップした後、新しい場所に新しいOracleホームを準備します。データベースがリリース11.2以下であるかどうかに関係なく、アップグレードするOracle Databaseのすべてのリリースについて、この手順を行います。Oracle Database 11gリリース2(11.2.0.3)以上では、既存のOracleホームにパッチ・セットを適用するのではなく、新しいOracleホームにOracle Grid InfrastructureとOracle Databaseソフトウェアをインストールします。

新しいOracleホームを準備するには、次の手順を実行します。

  1. アップグレードするデータベースのOracleホームから新しいOracle Database 11gリリース2(11.2)のOracleホームへ構成ファイルをコピーします。

    1. パラメータ・ファイルが古い環境のOracleホームに存在する場合は、新しいOracleホームへコピーします。パラメータ・ファイルを検索するデフォルトの場所は、LinuxまたはUNIXプラットフォームの場合はORACLE_HOME/dbsディレクトリで、Windowsオペレーティング・システムの場合はORACLE_HOME\databaseディレクトリです。パラメータ・ファイルは任意の場所に格納できますが、Oracle Database 11gリリース2(11.2)にアップグレードした後は、古い環境のOracleホームには格納しないでください。


      注意:

      初期化パラメータを編集する場合は、サーバー・パラメータ・ファイル(SPFILE)からテキストベースの初期化パラメータ・ファイル(PFILE)を作成する必要があります。

    2. Oracle ASMインスタンス内にパラメータ・ファイルがある場合は、次のコマンドを使用してパラメータ・ファイルをバックアップしてください。

      CREATE pfile FROM spfile;
      

      SPFILEがOracle ASMにある環境のデータベースをダウングレードする必要がある場合は、ダウングレードする前にパラメータ・ファイルをリストアする必要があります。

    3. パラメータ・ファイルがIFILE(インクルード・ファイル)エントリまたはSPFILE(サーバー・パラメータ・ファイル)エントリのいずれかを含むテキストベースの初期化パラメータ・ファイルであり、IFILEエントリまたはSPFILEエントリ内に指定されたファイルが古い環境のOracleホームに存在する場合、IFILEエントリまたはSPFILEエントリで指定されているファイルを新しいOracleホームへコピーします。IFILEエントリまたはSPFILEエントリ内に指定されたファイルには、追加の初期化パラメータがあります。

    4. 古い環境のOracleホームに格納されたパスワード・ファイルがある場合は、そのパスワード・ファイルをOracle Database 11gリリース2(11.2)のOracleホームに移動またはコピーします。

      パスワード・ファイルの名前と位置は、オペレーティング・システムによって異なります。LinuxまたはUNIXプラットフォームのデフォルトのパスワード・ファイルはorapwsidで、ORACLE_HOME/dbsディレクトリにあります。Windowsオペレーティング・システムのデフォルトのパスワード・ファイルはpwdsid.oraで、ORACLE_HOME\databaseディレクトリにあります。両方の場合とも、sidはOracleインスタンスのIDです。

    5. クラスタ・データベースをアップグレードしている場合で、initdb_name.oraファイルが古い環境のOracleホームに存在する場合、initdb_name.oraファイルを新しいOracleホームに移動またはコピーします。


    注意:

    クラスタ・データベースをアップグレードしている場合は、このクラスタ・データベースのインスタンスが構成されているすべてのノードでこの手順を実行してください。

  2. Oracle Enterprise Editionデータベースをアップグレードする場合は、古いOracleホームから新しいOracleホームにEnterprise Manager Databaseコンソールのディレクトリをコピーする必要があります。DBUAは、自動的にEnterprise Manager Databaseコンソールのディレクトリをコピーしてアップグレードすることに注意してください。

  3. 次の手順を実行して、Oracle Database 11gリリース2(11.2)のパラメータ・ファイルを調整します。

    1. 廃止された初期化パラメータを削除して、非推奨の初期化パラメータを調整します。一部のパラメータはOracle Database 11gリリース2(11.2)では廃止されており、他のパラメータは非推奨となっています。廃止されたすべてのパラメータを、Oracle Database 11gリリース2(11.2)インスタンスを起動するパラメータ・ファイルから削除します。廃止されたパラメータは、Oracle Database 11gリリース2(11.2)でエラーの原因となる可能性があります。また、新しいリリースで構文が変更になったパラメータも変更します。

      アップグレード前情報ツールを使用すると、「Deprecated Parameters」および「Obsolete Parameters」の各セクションに非推奨および廃止されたパラメータが表示されます。


      関連項目:

      非推奨となったり、廃止された初期化パラメータのリスト、およびOracle Databaseソフトウェアの異なるリリース間で互換性の問題が発生するようような方法で変更された初期化パラメータの詳細については、付録A「Oracle Databaseのアップグレード後の動作の変更点」を参照してください。

    2. COMPATIBLE初期化パラメータが、Oracle Database 11gリリース2(11.2)用に正しく設定されていることを確認します。COMPATIBLEが正しく設定されていない場合は、アップグレード前情報ツールによって「Database」セクションに警告が表示されます。

    3. 初期化パラメータの値をアップグレード前情報ツールによって示された最小値以上に調整します。

    4. パラメータ・ファイルのすべてのパス名が完全に指定されていることを確認します。パラメータ・ファイルには相対パス名を使用しないでください。

    5. パラメータ・ファイルにIFILEエントリがある場合、パラメータ・ファイルのIFILEエントリを変更して、手順1cで指定したインクルード・ファイルの新しい場所を指定するようにします。次に、手順aからdでパラメータ・ファイルを編集したときと同じ方法で、IFILEエントリに指定されているファイルを編集します。

    6. クラスタ・データベースをアップグレードしている場合は、パラメータ・ファイルを変更したときと同じ方法でinitdb_name.oraファイルを変更します。

    これらの調整後、変更したすべてのファイルを保存します。


    注意:

    クラスタ・データベースをアップグレードしている場合は、このクラスタ・データベースのインスタンスが構成されているすべてのノードでこの手順を実行してください。

  4. クラスタ・データベースをアップグレードしている場合は、CLUSTER_DATABASE初期化パラメータをfalseに設定します。アップグレードが完了した後、この初期化パラメータの設定をTRUEに戻す必要があります。

Oracle Databaseの手動でのアップグレード

「アップグレードする場合の新しいOracle Databaseソフトウェアのインストール」の説明に従って新しいOracle Databaseソフトウェアをインストールし、「手動アップグレードを行う場合の新しいOracleホームの準備」の説明に従って新しいOracleホームを準備したら、手動アップグレードに進むことができます。

データベースを手動でアップグレードするには、次の手順を実行します。

  1. インスタンスを停止します。

    SQL> SHUTDOWN IMMEDIATE
    
  2. ご使用のオペレーティング・システムがWindowsの場合、次の手順を実行します。

    1. アップグレードするデータベースのOracleサービスOracleServiceSIDを停止します(SIDはインスタンスの名前です)。たとえば、SIDORCLの場合、コマンド・プロンプトで次のように入力します。

      C:\> NET STOP OracleServiceORCL
      
    2. コマンド・プロンプトで、ORADIMを使用してOracleサービスを削除します。

      SIDORCLの場合、次のコマンドを入力します。

      C:\> ORADIM -DELETE -SID ORCL
      
    3. コマンド・プロンプトで新しいOracle DatabaseリリースのORADIMコマンドを使用して、Oracle Database 11gリリース2(11.2)のサービスを作成します。

      C:\> ORADIM -NEW -SID SID -SYSPWD PASSWORD -MAXUSERS USERS
           -STARTMODE AUTO -PFILE ORACLE_HOME\DATABASE\INITSID.ORA
      

      この構文には次の変数が含まれます。

      変数 説明
      SID アップグレードするデータベースのSIDと同じSID名。
      PASSWORD 新しいOracle Database 11gリリース2(11.2)データベース・インスタンスのパスワード。SYSDBA権限で接続するユーザー用のパスワードです。-SYSPWDオプションは必須ではありません。これを指定しない場合、オペレーティング・システムの認証が使用され、パスワードは不要です。

      Oracle Database 11gリリース2(11.2)のデフォルトのセキュリティ設定が適用されている場合、パスワードは8文字以上にする必要があり、welcomeoracleなどのパスワードは使用できません。詳細は、『Oracle Databaseセキュリティ・ガイド』を参照してください。

      USERS SYSDBA権限およびSYSOPER権限を付与できるユーザーの最大数。
      ORACLE_HOME Oracle Database 11gリリース2(11.2)のOracleホーム・ディレクトリ。-PFILEオプションを使用して、(Oracleホーム・ディレクトリのドライブを含む)フルパス名を指定する必要があります。

      たとえば、SIDORCLpassword(SYSPWD)がTWxy5791、ユーザーの最大数(MAXUSERS)が10、ORACLE_HOMEディレクトリがC:\ORACLE\PRODUCT\11.2.0\DBの場合、次のコマンドを入力します。

      C:\> ORADIM -NEW -SID ORCL -SYSPWD TWxy5791 -MAXUSERS 10
      -STARTMODE AUTO -PFILE C:\ORACLE\PRODUCT\11.2.0\DB\DATABASE\INITORCL.ORA
      

      ORADIMによって、ORACLE_HOME\databaseディレクトリにログが書き込まれます。

  3. ご使用のオペレーティング・システムがLinuxまたはUNIXの場合は、次の内容を確認します。

    1. ORACLE_SIDが正しく設定されていること。

    2. oratabファイルがOracle Database 11gリリース2(11.2)のOracleホームを指していること。

    3. 次の環境変数がOracle Database 11gリリース2(11.2)のディレクトリを指していること。

      • ORACLE_HOME

      • PATH

    4. ORACLE_HOME値を設定するためにクライアントで使用するすべてのスクリプトが、新しいOracleホームを指している必要があります。


    注意:

    クラスタ・データベースをアップグレードしている場合は、そのクラスタ・データベースのインスタンスが構成されているすべてのノードでこれらを確認してください。


    関連項目:

    ご使用のオペレーティング・システムでのその他の重要な環境変数の設定に関するオペレーティング・システム固有のOracle Databaseの手順については、『Oracle Databaseインストレーション・ガイド』を参照してください。

  4. Grid InfrastructureおよびOracle Databaseに対して別のユーザーおよびグループが存在する場合は、新しいORACLE_HOME/bin/oracleディレクトリに対して、次の例に示すように-oオプションを指定してGRID_HOME/binディレクトリにあるsetasmgidwrapスクリプトを実行します。

    $GRID_HOME/bin/setasmgidwrap o=ORACLE_HOME/bin/oracle
    
  5. Oracle Database 11gリリース2(11.2)のOracleホーム・ディレクトリの所有者としてシステムにログインします。

  6. システム・プロンプトで、ORACLE_HOME/rdbms/adminディレクトリに移動します。

  7. SQL*Plusを起動します。

  8. SYSDBA権限を持つユーザーとして、データベース・インスタンスに接続します。

  9. 次のコマンドを発行して、インスタンスを起動します。

    SQL> STARTUP UPGRADE
    

    注意:

    UPGRADEキーワードを使用すると、前のOracle Databaseリリースをベースとするデータベースをオープンできます。また、AS SYSDBAセッションへのログオンの制限、システム・トリガーの無効化、およびアップグレードの環境を準備するその他の操作も実行されます。

    PFILEオプションを使用して、初期化パラメータ・ファイルの場所を指定する必要がある場合があります。

    いったんデータベースをアップグレード・モードで起動すると、catupgrd.sqlスクリプトを実行するまでは、固定ビューへの問合せのみ、エラーにならずに実行できます。catupgrd.sqlを実行する前は、他のビューに問い合せたりPL/SQLを実行すると、エラーが戻されます。

    次に、新しいOracle Database 11gリリース2(11.2)データベースを起動しようとした場合に発生する一般的なエラーを示します。これらのエラーの一部はアラート・ログに記録され、セッションには表示されません。いずれかのエラーが表示された場合、 SHUTDOWN ABORTコマンドでデータベースを停止し、問題を修正します。

    • ORA-00401: パラメータcompatibleの値はこのリリースではサポートされません。

      COMPATIBLE初期化パラメータが10.0.0未満に設定されている場合。

    • ORA-39701: データベースをUPGRADEまたはDOWNGRADE用にEXCLUSIVEでマウントしてください

      CLUSTER_DATABASE初期化パラメータがFALSEではなく、TRUEに設定されている場合。

    • ORA-39700: データベースは、UPGRADEオプションを使用してオープンしてください

      UPGRADEキーワードを指定しないでSTARTUPコマンドを発行した場合。

    • ORA-00336: ログ・ファイルのサイズxxxxが最小値8192より小さくなっています

      REDOログのサイズが4MB未満の場合。

    廃止された初期化パラメータを示すエラーが表示された場合は、その廃止された初期化パラメータを記録し、アップグレードを継続します。次にデータベースを停止するときに、廃止された初期化パラメータを削除します。

  10. この手順は、Oracle9iリリース2(9.2)からアップグレードする場合のみ行ってください。そうでない場合、次の手順にスキップします。

    SYSAUX表領域を作成します。以前のリリースでは複数の表領域に別々に存在していたデータが、新しいOracle Database 11gリリースではSYSAUX表領域を使用して統合されます。

    SYSAUX表領域は、次の必須属性を指定して作成する必要があります。

    • ONLINE

    • PERMANENT

    • READ WRITE

    • EXTENT MANAGEMENT LOCAL

    • SEGMENT SPACE MANAGEMENT AUTO

    表3-4を使用して、SYSAUX表領域に最適なサイズを判断できます。また、アップグレード前情報ツールの「SYSAUX表領域」セクションに、SYSAUX表領域に最低限必要なサイズの見積りが表示されます。

    表3-4 SYSAUX表領域のサイズ変更のためのガイドライン

    要素

    CPUの数

    2

    8

    32

    同時実行セッションの数

    5

    20

    100

    ユーザー・オブジェクト(表および索引)の数

    500

    5,000

    50,000

    定常状態でのデフォルト構成のSYSAUXの推定サイズ

    500MB

    2GB

    5GB


    次のSQL文では、データベースに500MBのSYSAUX表領域が作成されます。

    SQL> CREATE TABLESPACE sysaux DATAFILE 'sysaux01.dbf'
             SIZE 500M REUSE
             EXTENT MANAGEMENT LOCAL
             SEGMENT SPACE MANAGEMENT AUTO
             ONLINE;
    

    関連項目:

    SYSAUX表領域の詳細は、『Oracle Database管理者ガイド』を参照してください。

  11. 成功したかどうかを後で確認するために、結果をログ・ファイルにスプールするようにシステムを設定します。

    SQL> SPOOL upgrade.log
    
  12. catupgrd.sqlスクリプトを実行します。

    SQL> @catupgrd.sql
    

    catupgrd.sqlスクリプトでは、必要なアップグレード・スクリプトが特定されて実行された後、データベースが停止されます。Oracle Database 11gリリース2(11.2)の環境でスクリプトを実行する必要があります。

    アップグレード・スクリプトを実行すると、特定のデータ・ディクショナリ表を作成して変更します。また、新しいOracle Database 11gリリース2(11.2)データベースの次のデータベース・コンポーネントも、アップグレードまたはインストールされます。

    • Oracle Database Catalog Views

    • Oracle Database Packages and Types

    • JServer JAVA Virtual Machine

    • Oracle Database Java Packages

    • Oracle XDK

    • Real Application Clusters

    • Oracle Workspace Manager

    • Oracle Multimedia

    • Oracle XML Database

    • OLAPアナリティック・ワークスペース

    • Oracle OLAP API

    • OLAPカタログ

    • Oracle Text

    • Spatial

    • Oracle Data Mining

    • Oracle Label Security

    • Messaging Gateway

    • Oracle Expression Filter

    • Oracle Rules Manager

    • Oracle Enterprise Manager Repository

    • Oracle Database Vault

    • Oracle Application Express


    注意:

    アップグレード前情報ツールを実行しなかった場合、catupgrd.sqlスクリプトは次のいずれかのエラーを戻して終了します。
    ORA-00942: table or view does not exist
    ORA-00904: "TZ_VERSION": invalid identifier
    ORA-01722: invalid number 
    

    いずれかのエラーが表示された場合は、SHUTDOWN ABORT文を発行し、元のOracleホーム・ディレクトリに戻り、アップグレード前情報ツール(utlu112i.sql)を実行します。「アップグレード前情報ツールの使用」を参照してください。


  13. インスタンスを再起動して、通常の操作用にシステム・パラメータを再初期化します。

    SQL> STARTUP
    

    catupgrd.sqlスクリプトの一部としてデータベースが停止された後のこの再起動では、すべてのキャッシュがフラッシュされ、バッファが消去されて、その他の内部的な不整合が解消されます。これらの操作は、新しくアップグレードしたOracle Databaseソフトウェアの整合性と一貫性を保証するための重要な最終手順です。

  14. 手順9でデータベースを起動したときに、廃止された初期化パラメータをリストしたメッセージが表示された場合は、廃止された初期化パラメータを再起動前にパラメータ・ファイルから削除します。ファイルを編集してパラメータを削除するために、必要に応じてSPFILEPFILEに変換します。『Oracle Database管理者ガイド』のサーバー・パラメータ・ファイルを使用した初期化パラメータの管理に関する章を参照してください。

  15. アップグレード後の状態ツールutlu112s.sqlを実行します(これにより、スプール・ログの末尾にアップグレードのサマリーが表示されます)。アップグレードの完了後に、utlu112s.sqlをいつでも実行できます。詳細は、「アップグレード後の状態ツールの概要」を参照してください。

    次のようにutlu112s.sqlを実行し、アップグレードの結果を表示します。

    SQL> @utlu112s.sql
    

    アップグレード後の状態ツールからエラーが戻されたり、VALIDでないか、または最新のリリースのものではないコンポーネントが表示された場合は、「Oracle Databaseのアップグレードのトラブルシューティング」で詳細を参照してください。

  16. catuppst.sqlを実行し、データベースをUPGRADEモードにする必要がないアップグレード操作を実行します。

    SQL> @catuppst.sql
    

    これにより、次の情報メッセージが生成される場合があります。

    Generating apply and rollback scripts...
    Check the following file for errors:
    Apply script: .*
    Rollback script: .*
    Executing script file...
    Updating registry...
    Check the following log file for errors: 
    
    Generating apply and rollback scripts...
    Check the following file for errors:
    .../cfgtoollogs/catbundle/catbundle_PSU_*.log
    Apply script:
    .../rdbms/admin/catbundle_PSU_*_APPLY.sql
    Rollback script:
    .../rdbms/admin/catbundle_PSU_*_ROLLBACK.sql
    Executing script file... 
    
    Updating registry...
    Check the following log file for errors:
    .../cfgtoollogs/catbundle/catbundle_PSU_*.log 
    
  17. utlrp.sqlを実行して、残りのすべてのストアドPL/SQLおよびJavaコードを再コンパイルします。

    SQL> @utlrp.sql
    

    予測されるすべてのパッケージおよびクラスが有効であることを確認します。

    SQL> SELECT count(*) FROM dba_invalid_objects;
    SQL> SELECT distinct object_name FROM dba_invalid_objects;
    

    注意:

    アップグレード前情報ツールでINVALIDオブジェクトが検出され、registry$sys_inv_objs表およびregistry$nonsys_inv_objs表に格納された場合は、ORACLE_HOME/rdbms/admin/utluiobj.sqlを実行してアップグレード処理の結果新しく無効になったオブジェクトのみを表示します。このutluiobj.sqlスクリプトを実行すると、アップグレード前はVALIDであったが、現在はINVALIDであるオブジェクトのみが表示されます。

  18. SQL*Plusを終了します。

  19. リリース10.2、11.1または11.2からクラスタ・データベースをアップグレードする場合は、次のコマンドを使用してOracle Clusterwareのデータベース構成をアップグレードしてください。

    $ srvctl upgrade database -d db-unique-name -o oraclehome
    

    ここで、db-unique-nameは(インスタンス名ではなく)割り当てられたデータベース名であり、oraclehomeは、データベースがアップグレードされるOracleホームの場所です。

これで、データベースが新しいOracle Database 11gリリースにアップグレードされました。第4章「Oracle Databaseのアップグレード後の作業」に示す手順を完了する準備ができました。


注意:

Oracle Warehouse Builderコンポーネントはcatupgrd.sqlスクリプトの一部としてアップグレードされませんので、このコンポーネントのバージョンはアップグレード処理中に更新されません。


注意:

古いOracleソフトウェアを保持している場合、古いソフトウェアを使用してアップグレードしたデータベースを起動しないでください。新しいOracle Databaseインストールの実行可能ファイルでのみデータベースを起動してください。また、古いOracle環境を削除する前に、古いOracle環境にあるデータ・ファイルをすべて新しいOracle Database環境に再配置してください。データ・ファイルの再配置の詳細は、『Oracle Database管理者ガイド』を参照してください。


アップグレード後の状態ツールの概要

アップグレード後の状態ツール(utlu112s.sqlスクリプト)を実行すると、アップグレードされたデータベースのデータベース・コンポーネントの状態および各コンポーネントのアップグレード完了までの所要時間が表示されます。アップグレード中に発生したすべてのエラーが、コンポーネントごとにリストされますので、これに対処する必要があります。utlu112s.sqlスクリプトは、、catupgrd.sqlの実行後にいつでも実行できます(utlrp.sqlの実行後ではありません)。

アップグレード後の状態ツールを実行すると、次の出力のようなレポートが表示されます。

Oracle Database 11.2 Post-Upgrade Status Tool           07-12-2011 12:36:25     
.                                                                               
Component                               Current      Version     Elapsed Time   
Name                                    Status       Number      HH:MM:SS       
.                                                                               
Oracle Server                                                                   
.                                         VALID      11.2.0.3.0  00:04:47       
JServer JAVA Virtual Machine                                                    
.                                         VALID      11.2.0.3.0  00:01:05       
Oracle Workspace Manager                                                        
.                                         VALID      11.2.0.3.0  00:00:18       
OLAP Analytic Workspace                                                         
.                                         VALID      11.2.0.3.0  00:00:07       
OLAP Catalog                                                                    
.                                         VALID      11.2.0.3.0  00:00:21       
Oracle OLAP API                                                                 
.                                         VALID      11.2.0.3.0  00:00:12       
Oracle Label Security                                                           
.                                         VALID      11.2.0.3.0  00:00:02       
Oracle Enterprise Manager                                                       
.                                         VALID      11.2.0.3.0  00:00:50       
Oracle XDK                                                                      
.                                         VALID      11.2.0.3.0  00:00:19       
Oracle Text                                                                     
.                                         VALID      11.2.0.3.0  00:00:11       
Oracle XML Database                                                             
.                                         VALID      11.2.0.3.0  00:01:04       
Oracle Database Java Packages                                                   
.                                         VALID      11.2.0.3.0  00:00:07       
Oracle Multimedia                                                               
.                                         VALID      11.2.0.3.0  00:01:25       
Spatial                                                                         
.                                         VALID      11.2.0.3.0  00:00:50       
Oracle Expression Filter                                                        
.                                         VALID      11.2.0.3.0  00:00:04       
Oracle Rules Manager                                                            
.                                         VALID      11.2.0.3.0  00:00:02       
Oracle Application Express                                                      
.                                         VALID     3.2.1.00.10                 
Oracle Database Vault                                                           
.                                         VALID      11.2.0.3.0  00:00:02       
Gathering Statistics                                                            
.                                                                00:00:36       
Total Upgrade Time: 00:12:30                                                    

Oracle Databaseのアップグレードのトラブルシューティング

Oracleでは、Oracle Databaseのアップグレード処理中に発生する可能性のある問題やエラーに関するトラブルシューティングのヒントおよび回避策を提供しています。また、『Oracle Databaseプラットフォーム共通日本語README』も確認してください。

この項には次のトピックが含まれます:

Oracle RACでのアップグレード前のOracleホームの削除

アップグレードが成功した後に、しばらくの間、古いOracleホームを保持しておく必要がある場合があります。ただし、新しくアップグレードされたOracle Databaseのテストが終了したら、古いOracleホームを削除する必要があります。

すべてのノードでClusterwareユーザーとして、次のSQL*Plusコマンドを入力します。

  • OLD_HOMEをデタッチします(OLD_HOMEはアップグレード前のOracleホームです)。

    $OLD_HOME/oui/bin/runInstaller -detachHome -silent -local
    
  • OLD_HOMEが中央インベントリから削除されたことを確認します。

    $OLD_HOME/OPatch/opatch lsinventory -all
    
  • 手動でOLD_HOMEのファイルを削除します。

    /bin/rm -rf $OLD_HOME
    

リソース制限およびOracle Databaseのアップグレード

Oracle Databaseのアップグレード中にリソース(ディスク領域、メモリーなど)が不足した場合は、リソースの割当てを増やします。リソースの割当てを増やした後、SHUTDOWN ABORTを実行し、インスタンスを(UPGRADEモードで)再起動してから、catupgrd.sqlスクリプトを再実行するか、またはDBUAを再起動する必要があります。

通常、Oracle Databaseの新しいリリース用に増やす必要があるリソースは、次のとおりです。

  • SYSTEMおよびSYSAUX表領域

    通常、SYSTEM表領域のサイズが不十分な場合、アップグレード中に次のいずれかのメッセージが表示されます。

    ORA-01650: unable to extend rollback segment string by string in tablespace string
    ORA-01651: unable to extend save undo segment by string for tablespace string
    ORA-01652: unable to extend temp segment by string in tablespace string
    ORA-01653: unable to extend table string.string by string in tablespace string
    ORA-01654: unable to extend index string.string by string in tablespace string
    ORA-01655: unable to extend cluster string.string by string in tablespace string
    

    これらのエラーを回避するには、SYSTEMおよびSYSAUX表領域にAUTOEXTEND ON MAXSIZE UNLIMITEDを設定します。

  • 共有メモリー

    より大きな共有メモリーのプール・サイズが必要な場合があります。増やす必要がある共有メモリーの初期化パラメータが、エラー・メッセージに示されます。

    ORA-04031: unable to allocate string bytes of shared memory ("string","string","string","string")
    

    関連項目:

    共有メモリーの初期化パラメータの詳細は、『Oracle Databaseリファレンス』を参照してください。

  • ロールバック・セグメント/UNDO表領域

    ロールバック・セグメントを使用している場合、アップグレード・スクリプトの実行中は、1つの大きい(100MBの)パブリック・ロールバック・セグメントをオンラインにする必要があります。小さいパブリック・ロールバック・セグメントは、アップグレード中はオフラインにする必要があります。通常、ロールバック・セグメントのサイズが不十分な場合は、次のエラーが表示されます。

    ORA-01562: failed to extend rollback segment number string
    

    UNDO表領域を使用している場合は、400MB以上であることを確認してください。

  • フラッシュ・リカバリ領域

    フラッシュ・リカバリ領域を使用してアップグレード中にこの領域が一杯になった場合は、アラート・ログに次のエラーが表示され、その後に問題から復旧するためのアドバイスも表示されます。

    ORA-19815: WARNING: db_recovery_file_dest_size of string bytes is 98.99%
    used, and has string remaining bytes available.
    

    問題の根本原因を特定し、アップグレードを続行するための適切な対処を行います。アップグレード中にこの問題が発生しないようにするには、アップグレードを開始する前に、フラッシュ・リカバリ領域内の使用可能な領域を増やします。

未設定のCOMPATIBLEパラメータ

アップグレード・モードで新しいOracleホームのデータベースをオープンしようとしたときに、エラーORA-00723「初期化パラメータCOMPATIBLEは明示的に設定する必要があります」が表示された場合、pfileまたはspfileでCOMPATIBLEが設定されていることを確認してください。


関連項目:

COMPATIBLE初期化パラメータの設定の詳細は、「COMPATIBLE初期化パラメータの設定」を参照してください。

エディション・セッションの起動エラー

SQL*Plusで実行するアップグレード・スクリプトまたはコマンドでEDITIONパラメータを設定すると、それ以降はOracle Databaseが適切に起動できなくなり、エラー「SP2-1540: Oracle Databaseはエディション・セッションでは起動できません。」がスローされます。この問題を回避するには、このパラメータが変更されるcatugrd.sqlまたはSQL*Plusセッションを実行した後に、そのSQL*Plusセッションを終了し、別のセッションでそのインスタンスを再起動します。

ORA-01408の手動の回避策

ORA-01408エラーは、Oracle Applicationデータベースの既知の問題です。この回避策では、次のシナリオに対処します。

SQL> Create Index system.repcat$_audit_column_f2_idx ON
2  system.repcat$_audit_column(base_sname,base_oname,base_conflict_type_id,
3  base_reference_name)
4  /
system.repcat$_audit_column(base_sname,base_oname,base_conflict_type_id,
                          *ERROR at line 2:
ORA-01408: such column list already indexed

回避策として、REPCAT$_AUDIT_COLUMN_IDX1索引を削除し、「Oracle Databaseのアップグレードの再実行」の説明に従って再度アップグレードを実行します。

アップグレード後にDBMS_DSTパッケージを実行した場合にORA-01822が発生する

Oracle Database 11gリリース2(11.2)にアップグレードした後、DBMS_DSTパッケージを実行すると、「ORA-01882: タイムゾーンのリージョンが見つかりません」エラーが発生する可能性があります。

このエラーは、ユーザーがタイムゾーン・ファイルのバージョンを誤って設定したことが原因で、データベースに複数のタイムゾーン地域のIDが不正に格納されている場合に戻されます。次に例を示します。

ERROR at line 1:
@  ORA-01882: time zone region not found
@  ORA-06512: at "SYS.DBMS_DST", line 113
@  ORA-06512: at "SYS.DBMS_DST", line 1101
@  ORA-06512: at line 1

この問題を解決するには、「TIMESTAMP WITH TIME ZONEデータ型に関する警告の概要」の説明に従ってタイムゾーンのバージョンを更新し、「Oracle Databaseのアップグレードの再実行」の説明に従ってアップグレードを再実行します。

コンポーネントの状態の理解

アップグレードの最後には、すべてのコンポーネントがVALIDの状態でアップグレード後の状態ツールに表示される必要があります。次のリストは、表示される可能性のある他の状態の値とその説明です。

  • NO SCRIPT

    コンポーネント・アップグレード・スクリプトがORACLE_HOMEに見つかりませんでした。インストール・ログを確認し、コンポーネント・ソフトウェアをインストールし、catupgrd.sqlを再実行します。

  • OPTION OFF

    コンポーネントに必要なサーバー・オプションがインストールされていないか、またはサーバーとリンクされていません。V$OPTIONビューとインストール・ログを確認します。コンポーネントをインストールするか、必要なオプションをサーバーに再リンクしてから、catupgrd.sqlを再実行します。

  • REMOVED

    データベースから削除されたため、コンポーネントはアップグレードされませんでした。

  • INVALID

    アップグレードの完了時に、コンポーネントの一部のオブジェクトが無効でした。コンポーネントのアップグレード中にエラーが発生しなかった場合は、アップグレード全体を再実行しなくても、utlrp.sqlを実行することで、状態がVALIDに変わる可能性があります。utlrp.sqlを実行した後に、DBA_REGISTRYビューを確認します。

  • UPGRADING

    コンポーネントのアップグレードが完了していません。問題を解決して、catupgrd.sqlを再実行します。

アップグレード全体が完了する前にDBUAにより無効なコンポーネントにXマークを付けることが可能

アップグレードの進行中に、アップグレード処理ウィンドウで、DBUAにより無効なコンポーネントにXマークを付けることができます。無効なコンポーネントは、再コンパイルの実行後に再検証できます。utlrp.sqlの再コンパイルが実行された後に、DBUAの「アップグレード結果」ページで最終的なコンポーネントの状態を確認してください。

Oracle Databaseのアップグレードの再実行

次の手順に従って、catupgrd.sqlスクリプトでアップグレードを再実行できます。

アップグレードを再実行するには、次の手順を実行します。 

  1. 次のようにデータベースを停止します。

    SQL> SHUTDOWN IMMEDIATE
    
  2. UPGRADEモードでデータベースを再起動します。

    SQL> STARTUP UPGRADE
    
  3. 成功したかどうかを後で確認するために、結果をログ・ファイルにスプールするようにシステムを設定します。

    SQL> SPOOL upgrade.log
    
  4. catupgrd.sqlを再実行します。

    SQL> @catupgrd.sql
    

    注意:

    catupgrd.sqlスクリプトは、必要な回数だけ再実行できます。このスクリプトを最初に実行した際は、エラー・メッセージが戻されません。スクリプトを再実行すると、ORA-00001メッセージが表示されます。このメッセージは無視して問題ありません。

  5. utlu112s.sqlを再実行します。

    SQL> @utlu112s.sql
    

Oracle Databaseのアップグレードの取消し

「手動アップグレードを行う場合のOracle Databaseのバックアップ」の手順を完了してデータベースのバックアップを作成済の場合、アップグレードを取り消す最も簡単な方法は、次の手順で説明するようにバックアップをリストアすることです。

以前のバックアップをリストアすることによってアップグレードを取り消すには、次の手順を実行します。 

  1. 以前のリリースのOracleホーム・ディレクトリの所有者としてシステムにログインします。

  2. RMANにサインオンします。

    rman "target / nocatalog"
    
  3. 次のRMANコマンドを発行します。

    STARTUP NOMOUNT
    RUN
    {
        RESTORE CONTROLFILE FROM 'save_controlfile_location';
        ALTER DATABASE MOUNT;
        RESTORE DATABASE FROM TAG before_upgrade
        ALTER DATABASE OPEN RESETLOGS;
    }
    

Oracle ASMインスタンスのアップグレードの概要

Oracle ASMをアップグレードする場合は、Oracle Grid Infrastructureホーム・ディレクトリにあるOracle Universal Installer(OUI)の実行可能ファイルを使用してOracle ASMインスタンスをアップグレードすることをお薦めします。OUIは、以前のリリース・レベルのOracle ASMインスタンスを検出すると、自動的にアップグレード・モードに切り替わります。

Oracle ASM Configuration Assistantを使用すると、既存のOracle ASMインスタンスを現行のソフトウェア・レベルにアップグレードして、古いOracle ASMインスタンスから最新のOracle Grid Infrastructureホームにアップグレードできます。

Oracle ASMインスタンスをOracle Restart 11gリリース2(11.2)構成にアップグレードできます。Oracle Universal Installer(OUI)を使用して、Oracle ASMインスタンスをアップグレードする方法をお薦めします。

Oracle Database 11g以上を実行している環境では、クラスタ化されたOracle ASMインスタンスに対してローリング・アップグレードを実行することもできます。


関連項目:

  • OUIを使用したOracle ASMインスタンスのアップグレードの詳細は、『Oracle Databaseストレージ管理者ガイド』を参照してください。

  • Oracle ASM Configuration Assistantを使用したOracle ASMインスタンスのアップグレードの詳細は、『Oracle Databaseストレージ管理者ガイド』を参照してください。

  • OUIを使用したOracle Restart構成でのOracle ASMインスタンスのアップグレードの詳細は、『Oracle Databaseストレージ管理者ガイド』を参照してください。

  • Oracle ASMのローリング・アップグレードの実行手順の詳細は、『Oracle Grid Infrastructureインストレーション・ガイド』を参照してください。