データベースのアップグレード
この記事では、コンソールおよびAPIを使用してDBシステム内のデータベースをアップグレードする手順について説明します。
Oracle Databaseリリースおよびソフトウェアのサポート・タイムラインについては、My Oracle SupportポータルのRelease Schedule of Current Database Releases (Doc ID 742060.1)を参照してください。
必要なIAMポリシー
Oracle Cloud Infrastructureを使用するには、管理者によってポリシーでセキュリティ・アクセス権が付与されている必要があります。 コンソールまたは(SDK、CLIまたはその他のツールを使用した) REST APIのどれを使用しているかにかかわらず、このアクセス権が必要です。 権限がない、または認可されていないというメッセージが表示された場合は、アクセス権のタイプと作業するコンパートメントを管理者に確認してください。
管理者向け: 「データベース管理者がOracle Cloudデータベース・システムを管理できるようにします」のポリシーを使用すると、指定したグループはデータベースおよび関連するデータベース・リソースに対してすべての操作を実行できます。
ポリシーを初めて使用する場合は、ポリシーの開始および共通ポリシーを参照してください。 データベースのポリシーの作成の詳細は、「データベース・サービスの詳細」を参照してください。
前提条件
DBシステムのOracle Databaseをアップグレードするための次の前提条件を確認します。
- データベースはarchivelogモードである必要があります。
- データベースでフラッシュバックを有効にする必要があります。
詳細は、次を参照してください。
- これらの設定についてさらに学習するには、データベースのリリース・バージョンの「Oracle Databaseドキュメント」を参照してください
- データベースのオンデマンド完全バックアップの作成
- バックアップからのDB Systemの作成
データベースのアップグレードについて
データベース・ソフトウェア・バージョンのアップグレードに関する次の情報を確認します。
- Oracle Databaseの19cまたは21cをOracle AI Database 26aiにアップグレードできます。 以前のOracle Databaseバージョンはすべて、最初にOracle Database 19cにアップグレードする必要があります。
- DBシステムは、Oracle AI Database 26aiにアップグレードするために、Grid Infrastructureソフトウェア・バージョン26aiを使用する必要があります。
- DBシステムは、Oracle Linux 8 (OL8)を使用してOracle AI Database 26aiにアップグレードする必要があります。
- DBシステムでは、Oracle Linux 7 (OL7)を使用してOracle Database 19cにアップグレードする必要があります。
- DB Systemで自動ストレージ管理(ASM)ストレージ管理ソフトウェアを使用している場合、システムはOracle Grid Infrastructure 19c以降を使用する必要があります。
- DBシステム上のデータベースが最小ソフトウェア・バージョン要件を満たしていない場合は、バックアップ/リストア操作を使用してOL7およびGI 19cを使用するDBシステムにデータベースをリストアしてからでないと、アップグレードできません。
- データベースのアップグレードには、データベースのダウンタイムが含まれます。 Oracleでは、データベース・アップグレードをスケジュールするときにこのことを考慮することをお薦めします。
- Oracleでは、アップグレードする前に、データベースをバックアップし、テスト・システムで新しいソフトウェア・バージョンをテストすることをお薦めします。
オンデマンド手動バックアップの作成の詳細は、「オンデマンド完全バックアップ」を参照してください。
- Oracleでは、アップグレードの実行を計画する前に緩和が必要な問題を検出できるように、アップグレード前にデータベースのアップグレードの事前チェック操作を実行することをお薦めします。 事前チェック操作はデータベースの可用性に影響しません。 いつでもできます。
- 自動バックアップ操作が行われている間は、アップグレード操作を実行できません。 アップグレードの前に、Oracleでは自動バックアップを無効にし、手動バックアップを実行することをお薦めします。
詳細は、「データベースの自動バックアップの構成」および「データベースのオンデマンド完全バックアップの作成」を参照してください。
- アップグレード後は、アップグレード前に作成した自動バックアップを使用して、データベースを以前の時点に戻すことはできません。
- バージョン11.2ソフトウェアを使用するデータベースをアップグレードする場合、結果のバージョン19cデータベースは非コンテナ・データベース(非CDB)になります。 アップグレードの完了後、コンソールまたはAPIを使用して、結果の19cデータベースをプラガブル・データベース(PDB)に変換できます。
事前チェックの実行および非CDBのPDBへの変換の詳細は、「非コンテナ・データベースのOracle Database 19c PDBへの変換」を参照してください。
- 一般的に使用可能なOracle Databaseソフトウェア・リリースを使用したアップグレードでは、dbcliユーティリティを使用してアップグレードを実行できません。 コンソールを使用して、データベースのアップグレードを実行します。 組織でカスタマイズされたソフトウェア・バージョンを使用してアップグレードする必要がある場合は、Oracleに連絡して、dbcliで使用できる事前認証URLを取得してソフトウェアをダウンロードしてください。 dbcliを使用したアップグレードは、Oracleがこの事前認証済リクエストURL (PAR URL)を提供している場合にのみ実行できます。
Data Guard関連付けを持つデータベースのアップグレード
Data Guard関連付けを持つデータベースの場合、常にスタンバイ・データベースを最初にアップグレードし、次にプライマリ・データベースをアップグレードする必要があります。 アップグレード・オプションは、コンソールを使用して作成されたData Guard関連付けのコンソールで使用できます。 ただし、Data Guard関連付けがないが、プライマリ・データベースまたはスタンバイ・データベースとして手動で構成されているデータベースがある場合、そのようなデータベースのアップグレードには次が適用されます。
- データベース・サービスは、データベースがプライマリかスタンバイかを検出および識別できます。
- データベース・バージョン11.2および12.1の場合、アップグレードする前にData Guard構成を無効にする必要があります。
- まず、スタンバイ・データベース、次にプライマリ・データベースをアップグレードする必要があります。
-
データベース・サービスは、アップグレードするデータベースに保証付きリストア・ポイント(GRP)を設定します。 アップグレードが正常に完了すると、GRPはプライマリ・データベースから自動的に削除されます。 ただし、スタンバイ・データベースでは、GRPを手動で削除する必要があります。
- アップグレード中に、
DB_HOMEが変更され、スタンバイ・データベースがマウント・モードでオープンされ、プライマリが読取り/書込みモードでオープンされます。
プライマリ・データベースとスタンバイ・データベースの両方が正常にアップグレードされたら、次を実行します。
- データベース・バージョン11.2および12.1の場合、アップグレード前に無効にしたData Guard構成を有効にします。
- スタンバイ・データベースのオープン・モードを確認します。
- スタンバイで作成されたGRPを削除します。
データベース・サービスによるデータベース・アップグレード操作の実行方法
データベースのアップグレード・プロセス中に、次のステップが自動的に実行されます:
- 自動事前チェックを実行します。 これにより、軽減が必要な問題を識別し、アップグレード操作を停止できます。
- GRPを設定して、アップグレードが失敗した場合にフラッシュバックを実行できるようにします。
- 指定したOracle公開またはカスタム・データベース・ソフトウェア・イメージに基づいて、新しいデータベース・ホームを作成します。
- Database Upgrade Assistant (DBUA)ソフトウェアを実行して、データベースでアップグレードを実行します。 Data Guard関連付けのデータベースの場合、このステップはプライマリ・データベースでのみ実行されます。
失敗したデータベース・アップグレードのロールバック
ノート:
ロールバック操作は、Oracle Database Enterprise Editionsでのみ使用できます。データベースのアップグレードが正常に完了しない場合は、ロールバックを実行するオプションがあります。 データベースのアップグレード操作の失敗後、「データベースの詳細」ページに表示されるバナー・メッセージにロールバック・オプションが表示されます。
ロールバックを開始する前に、次の情報を確認してください。
- ロールバックによって、データベースはアップグレード前の状態にリセットされます。
- アップグレード中およびアップグレード後に行われたデータベースへのすべての変更は失われます。
Data Guard関連付けを持つデータベースの場合、次のステップに従ってロールバックを実行する必要があります。
- スタンバイ・データベースのアップグレードが失敗し、ロールバックする場合は、次のステップを実行します。
- スタンバイ・データベースをロールバックします。
- スタンバイ・データベースのアップグレードが失敗し、再試行する場合は、次のステップを実行します。
- スタンバイ・データベースをロールバックします。
- スタンバイ・データベースのアップグレード。
- プライマリ・データベースのアップグレードが失敗し、ロールバックする場合は、次のステップを実行します。
- プライマリ・データベースをロールバックします。
- CLIを使用してスタンバイ・データベースをロールバックします。 コンソールには、正常なアップグレードをロールバックするオプションはありません。
CLIの詳細は、「アップグレード・ロールバック」を参照してください。
- 11.2および12.1データベース・バージョンで実行されているプライマリ・データベースでData Guard構成を再度有効にします。
- ロールバックが成功したら、Data Guard構成を確認します。
- プライマリ・データベースのアップグレードが失敗し、再試行する場合は、次のステップを実行します。
- プライマリ・データベースをロールバックします。
- スタンバイ・データベースで、GRPへのフラッシュバックを実行します。
GRPの詳細は、「保証付きリストア・ポイントの管理」を参照してください。
- プライマリ・データベースをアップグレードします。
ノート:
プライマリ・データベースを最初にロールバックしてから、スタンバイ・データベースをロールバックする必要があります。通常、コンソールでロールバック・オプションを使用すると、データベース・サービスによって次のステップが自動的に行われます。
- フラッシュバックを実行します。
- データベース・ホームを変更します。
- GRPを削除します。
成功したスタンバイ・データベース・アップグレードのロールバックは、CLIを使用してのみです。
コンソールを使用してロールバックを実行するステップの詳細は、「失敗したデータベース・アップグレードのロールバック」を参照してください。
データベースのアップグレードが完了した後
アップグレードが成功したら、次の点に注意してください:
- Oracleでは、dbcliユーティリティを使用して古いデータベース・ホームを削除することをお薦めします。
詳細は、「Dbhomeコマンド」を参照してください。
- アップグレード前に自動バックアップを無効にした場合、データベースの自動バックアップが有効になっていることを確認します。
- Oracle Database
COMPATIBLEパラメータを編集して、新しいOracle Databaseバージョンを反映します。詳細は、「Oracle Databaseの互換性とは」を参照してください。
- Oracleユーザーのホーム・ディレクトリにある
.bashrcファイルが、19cデータベース・ホームを指すように更新されていることを確認します。 - データベースをOracle Database 11.2からOracle Database 19cにアップグレードした場合は、結果の非コンテナ・データベースをプラガブル・データベース(PDB)に変換できます。 変換前に事前チェックを実行して、変換操作の前に問題を特定できます。
- スタンバイ・データベース上に作成されたGRPは削除する必要があります。
保証付きリストア・ポイントの管理
保証付きリストア・ポイントのリスト
V$RESTORE_POINTビューを使用して、次の文を使用してすべてのGRPをリストできます。
SELECT NAME FROM V$RESTORE_POINT WHERE GUARANTEE_FLASHBACK_DATABASE='YES';詳細は、「V$RESTORE_POINTビューを使用したリストア・ポイントのリスト」 (「Oracle Database Backup and Recoveryユーザーズ・ガイド」)を参照してください。
保証付きリストア・ポイントのドロップ
You can use the following statement to drop a GRP using the DROP RESTORE POINT statement.
DROP RESTORE POINT <grp name>;ここで、grp nameは、削除する必要があるGRPの名前です。
詳細は、「リストア・ポイントの削除」 (「Oracle Database Backup and Recoveryユーザーズ・ガイド」)を参照してください。
データベースのアップグレード
OCIコンソールを使用して、データベースを古いリリースから新しいメジャー・リリース・バージョンにアップグレードするには、次のステップを実行します:
- 「DBシステム」リスト・ページで、操作するデータベースを含むDBシステムを選択します。 リスト・ページまたはDBシステムの検索に関するヘルプが必要な場合は、「DBシステムのリスト」を参照してください。
- 「データベース」タブで、操作するデータベースを選択します。
- データベースの詳細ページで、「更新」タブを選択して、データベースで使用可能なアップグレードのリストを表示します。
ノート:
最新の更新レベルのOracle Databaseおよび最新の更新レベルのみをアップグレード操作に使用できます。 - 目的のアップグレードの「アクション」メニューから、次のいずれかのアクションを選択します:
- 詳細の表示: このアップグレードの詳細を表示します。
- 事前チェック: 前提条件をチェックして、アップグレードを正常に適用できることを確認します。
- 更新の適用: 選択したアップグレードを適用します。 Oracleでは、アップグレードを適用する前に、アップグレードの事前チェック操作を実行することをお薦めします。
リストで、「状態」に操作のステータスが表示されます。 アップグレードの適用中、「状態」は「アップグレード中」と表示されます。 データベースのステータスも「アップグレード中」と表示されます。 データベースおよびそのリソースに対するライフサイクル操作は一時的に使用できなくなる可能性があります。 アップグレードが正常に完了すると、状態が「適用済」に変わり、データベースのステータスが「使用可能」に変わります。
データベースのアップグレード履歴の表示
OCIコンソールを使用してデータベースのアップグレード履歴を表示するには、次のステップを実行します:
- 「DBシステム」リスト・ページで、操作するデータベースを含むDBシステムを選択します。 リスト・ページまたはDBシステムの検索に関するヘルプが必要な場合は、「DBシステムのリスト」を参照してください。
- 「データベース」タブで、操作するデータベースを選択します。
- 詳細ページで、「更新履歴」タブを選択して、そのデータベースの更新およびアップグレード操作の履歴を表示します。
失敗したデータベース・アップグレードのロールバック
前提条件
- アップグレードのロールバック操作は、アップグレードに失敗したOracle Database Enterprise Editionソフトウェアで、現在「失敗」ライフサイクル状態にあるものに対してのみ使用できます。
- 次のステップに進む前に、「失敗したデータベース・アップグレードのロールバック」トピックの情報を確認してください。
手順
OCIコンソールを使用して、失敗したデータベース・アップグレードを以前のOracle Databaseバージョンにロールバックするには、次のステップを実行します:
- 「DBシステム」リスト・ページで、操作するデータベースを含むDBシステムを選択します。 リスト・ページまたはDBシステムの検索に関するヘルプが必要な場合は、「DBシステムのリスト」を参照してください。
- 「データベース」タブで、操作するデータベースを選択します。
- アップグレードが失敗すると、データベースの詳細ページの上部に「ロールバック」ボタンを含むバナーが表示されます。
- 「ロールバック」を選択して確認します。
非コンテナ・データベースのOracle Database 19c PDBへの変換
このトピックは、Oracle Database 11.2からOracle Database 19cにアップグレードされたデータベースに適用されます。 変換プロセスの一環として、非CDBの変換によって作成されたプラガブル・データベース(PDB)を保持する新しいコンテナ・データベース(CDB)を作成します。 非コンテナ・データベースを19cより新しいバージョンのOracle Databaseを使用するPDBに変換するには、このトピックのステップに従って、「データベースのアップグレード」の説明に従って、結果の19cデータベースを新しいソフトウェア・バージョンにアップグレードします。
前提条件と推奨される方法
- 非CDBをPDBに変換するには、非CDBのTDEウォレット・パスワードが必要です。
- Oracleでは、変換を試行する前にデータベースの手動バックアップを作成することをお薦めします。 詳細は、「ベース・データベース・サービスでのバックアップおよびリカバリ」を参照してください。
- コンソールでは、変換を正常に完了できることを確認するために、変換操作に対して事前チェックを実行できます。 Oracleでは、変換を実行する前に事前チェックを実行することをお薦めします。 事前チェックを実行するには、この手順のステップに従って、最後のステップとして「事前チェック」を選択します。
- ソースDBシステムで変換を試行する前に、DBシステムをクローニングし、クローニングしたシステムのデータベースで変換操作をテストできます。 詳細は、「DBシステムのクローニング」を参照してください。
コンソールを使用した非CDBからPDBへの変換
- 「DBシステム」リスト・ページで、操作するデータベースを含むDBシステムを選択します。 リスト・ページまたはDBシステムの検索に関するヘルプが必要な場合は、「DBシステムのリスト」を参照してください。
- 「データベース」タブで、操作するデータベースを選択します。
- データベースの詳細ページの「データベース情報」タブで、「データベース・アーキテクチャ」フィールドを確認して、データベースが非コンテナ・データベースであることを確認します。
- データベースの詳細ページで、「アクション」メニューから「PDBに変換」を選択します。
- 「非CDBデータベースのプラガブル・データベースへの変換」パネルで、「コンテナ・データベースの詳細」セクションに次の情報を指定します:
- コンテナ・データベース名: 変換したPDBを保持する新しいCDBの名前を指定します。
- パスワード: 新しいCDBのパスワードを指定します。
- パスワードの確認: CDBパスワードを再入力します。
- TDEウォレットの管理者パスワードを使用: TDEウォレットに個別のパスワードを設定する場合は、このオプションの選択を解除します。 このオプションの選択を解除すると、次のフィールドが表示されます:
- TDEウォレット・パスワードの入力: 新しいCDBにTDEウォレット・パスワードを指定します。
- TDEウォレット・パスワードの確認: TDEウォレット・パスワードを再入力します。
- 「非コンテナ・データベースの詳細」セクションで、変換する非CDBの既存のTDEウォレット・パスワードを入力します。
- 「事前チェック」を選択して事前チェックを実行するか、データベースを変換する準備ができたら「PDBに変換」を選択します。
ノート:
事前チェックを実行すると、コンソールのデータベース詳細ページに戻ります。 変換操作を開始するには、このトピックのすべてのステップを再度実行し、最後のステップで「PDBに変換」オプションを選択します。
データベースが正常に変換されると、コンソールの「データベースの詳細」ページに、「データベース・アーキテクチャ」フィールドにコンテナ・データベースが表示されます。 このフィールドは、データベースの詳細ページの「データベース情報」タブにあります。
非CDBをPDBに変換するためのトラブルシューティングのヒント
変換操作が正常に完了しない場合、データベースcli (dbcli)コマンドライン・ユーティリティを使用して問題を解決できます。 データベースcliの詳細は、「Oracle Database CLIリファレンス」を参照してください。
トラブルシューティングする手順は、次のとおりです。
- 「DBシステムへの接続の概要」の説明に従ってDBシステムにログインします。
dbcli list-jobsコマンドを使用して、失敗したデータベース変換操作のジョブIDおよびステータスを確認します。dbcli describe-jobコマンドを使用して、失敗したデータベース変換操作の詳細を表示します。
dbcli describe-jobコマンドによって再実行された情報に基づいて、変換操作の失敗の原因となった問題の解決を試みることができます。 接続プロセス中に発生したエラー(新しいPDBが新しいCDBに接続されている場合)については、Oracle Supportに連絡して、障害の原因となった問題の解決後の変換の完了についてサポートを受けてください。
変換操作が失敗した場合、コンソールにDBシステム内の2つのデータベースが表示されるか、終了したデータベースのみが表示されることがあります。 DBシステムは、自身をリセットするのに最大2時間かかる場合があります。 コンソールに2つのデータベースまたは1つの終了データベースが表示されなくなった場合は、変換を再試行できます。 DBシステム自体がリセットされず、再試行してください。Oracle Supportに連絡してください。