Oracleマスター Silver 12ｃ Oracle Databaseソフトウェアのアップグレード

※用語はなるべく、Oracle® Databaseリファレンス　12c リリース1 (12.1) より抜粋しております。

【重要】：試験最重要ポイント
【理解】：試験問題を解くために必要な理解
太字：試験重要ポイント
赤字：最低限押さえておきたい知識

###■公式チェックリストより出題範囲
●Oracle Databaseソフトウェアのアップグレード
　・データ移行方法について説明する
　・アップグレード・プロセスについて説明する
　

試験内容チェックリストから除外されたトピック
●Oracle Databaseソフトウェアのアップグレードの準備
　－アップグレード方法について説明する
●Oracle database 12cへのアップグレード
　－Oracle Databaseで特定の機能またはオブションを使用する場合のアップグレード要件について説明する
　－アップグレードを実行する前にアップグレード前情報ツールを使用する
　－アップグレードを実行する前に新しいOracleホームを準備する

●Oracle　Database 12ｃへのアップグレード
　－DBUAを使用してデータベースを12ｃにアップグレードする
　－スクリプトとツールを使用して手動でアップグレードする

●アップグレード後の作業の実行
　－統合監査に移行する
　－アップグレード後の作業を実行する

－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－

###要点
がっつり削除されてしまっているので出題範囲のみにしぼれば学習にかかる労力は少ないが、試験重要度は高いため注意すること。
試験内容チェックリストのデータ移行方法とアップグレードプロセスについてはOracle公式よりドキュメントが出ているので、参考書よりもこちらの方がいいと思います。
https://www.oracle.com/technetwork/jp/database/upgrade/upgrading-oracle-database-wp-12c-1896123-ja.pdf

長文を読むのが苦の人のために要点だけ箇条書きするので、ドキュメントからその部分だけ読んでください。
・アップグレードによる操作はデータディクショナリに影響するが、ユーザーやアプリケーションの表領域に保存されているデータには影響されない。

【データ移行方法】表2参照。各移行方法の違いを抑えること。特に複雑さ、速度については必ず。
－Oracle Database 12ｃ機能のフル・トランスポータブル・エクスポート/インンポートまたは従来のトランスポータブル表領域モードを使用した、エクスポートとインポート
－ダンプファイルまたはネットワーク・モードを使用したOracle Data Pumpエクスポート/インポート

**データ移行方法の要点**
【フルトランポータブル・エクスポート/インポートの要点】
**プロシージャ、パッケージ、制約、トリガーなどのメタデータを自動で移動できる。**
－SYSAUXやSYSTEMなどの非トランスポータブルの表領域のデータを移動できる。暗号化されたデータを移動できる。
－ジョブは一度中断されると再開できない、初めからやりなおし。

【トランスポータブル表領域のエクスポート/インポートの要点】
移行元と移行先のプラットフォームやOS、エンディアンが異なる場合は、OracleRMANの**CONVERTコマンド**を使用する必要がある。
－ジョブは一度中断されると再開できない、初めからやりなおし。

【Oracle Data Pumpエクスポート/インポートの要点】
－Oracleデータベース内、Oracleデータベース間での移行、異なるOS、異なるリリースのOracleDatabaseへの移行が可能。
－データだけでなく、メタデータの移行も可能。移行の際にデータを変換することができる。
（新しいキャラクタセットへの変更、暗号化や圧縮の実装、データベース内のパーティション化の変更など）
－ネットワークモードを使用して移行することができる。これによりファイルの保存と管理、転送の必要がなくなり、移行の手順は1つで済む。
ネットワークモードジョブは常に再開可能です。
－エクスポートユーティリティ（expdp）、インポートユーティリティ（impdp）の名前は古いデータベースから変わっている点に注意

【オリジナルエクスポート/インポート】
－古いデータベースをOracle Database 12c にアップグレードまたは移行するときに、エクスポート（exp）、インポート（imp）を使用する。
－Data Pumpと名前が違う点に注意すること。


－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－

###データ移行方法について説明する
　データ移行には、次の方法があります。

●Oracle Data Pumpを利用する方法
　データベースの全体または一部をエクスポートし、それを新しいOracle Database 12cデータベースにインポートできます。

●SQL文を利用する方法
　CREATE TABLE AS SELECT 文を使用して、データベースから新しいOracle Database 12cデータベースにデータをコピーできます。

Data Pumpを使用したエクスポートおよびインポートは次の場合に便利です。
●**オペレーティングシステムまたはハードウェアプラットフォームの変更**
　－LinuxからWind環境などへの移行など。
●**サポートされていないバージョンからのアップグレード**
●キャラクタセットの変更
●アップグレードと組み合わせた実施

－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－
###Oracle Database 12cへのアップグレード

■アップグレードの準備

　●Oracle Database 12ｃの機能について理解する
　　使用する機能によってインストール後の操作が変わります

　●アップグレードパスを決定する
　　DBUAやSQLによる直接アップグレードが可能かどうかを検討します

　●アップグレード方法を選択する
　　直接アップグレードかデータ移行にするのか選択します

　●OFA準拠のOracleホームディレクトリパスを決定する
　　Oracleホームを決定します

　●**バックアップ/リカバリ計画を決定する**
　　RMANバックアップ、フラッシュバック機能を検討します

　●テスト計画を作成する
　　出来る限り本番環境に類似した環境、使用する機能やアプリケーションをテストできるようにします

【重要】
虫食いで出題される。

___
■アップグレードパス
　Oracle Databaseソフトウェアがリリース10.2.0.5、11.1.0.7または11.2.0.2以上の場合は直接12ｃへのアップグレードを実行できますが、10.2.0.5以前またはリリース11.2.0.1の場合は12ｃへの直接アップグレードはできず、**中間リリースへのアップグレードが必要です**

【重要】
細かいリリースのバージョンまでは問われないが、Oracle Database 9iから直接アップグレードすることは可能ですか？と出題される。
　
■アップグレードの計画
　●次の要素を考慮し、アップグレード方法を検討します
　　・データベースのサイズ
　　・アップグレード実行に必要な時間
　　・プラットフォーム、記憶域、キャラクタセットなどの変更の有無
_
　●テスト計画を作成する
　　・アップグレードテスト：アップグレードパスを計画及びテストする
　　・最小テスト：現行データベースからプリケーションの全部または一部をアップグレードしたデータヴェースに移動し、データベースの新機能を使用可能にしないでアプリケーションを実行する。このタイプのテストは、アプリケーションの起動または呼び出しに関する問題の特定に役立つ
　　・機能テスト：システムの新機能と既存機能をアップグレード後にテストする一連のテストを実行する。
　　・高可用性テスト：アップグレードしたデータベースシステムが、Recovery Time ObjectiveおよびRecovery Point Objectiveのビジネス要件を満たしていることを確認するテストを実行する　
　　・統合テスト：システムのコンポーネント間の相互作用が適切であることを確認するテストを実行する
　　・パフォーマンステスト：アップグレードしたデータベースにおけるさまざまなSQL文のパフォーマンスを、現行データベースにおける同じ分のパフォーマンスと比較するテストを実行する
　　・ストレステスト：アップグレードしたデータベース全体を、今後の拡張性も含め大きなボリュームやロード実行が問題ないかどうかをテストする。

　●データベースリプレイ
　　　現行の本番システム上のデータベースのワークロードを取得して、テストシステム上でリプレイできます。本番データベースの同時実行を含むワークロードを取得できるため、実際の動作に限りなく近いテストが行えます。

　●**SQLパフォーマンスアナライザ**
　　　変更前と変更後のパフォーマンスデータを取得し、比較することができます。**アップグレードによって影響を受けたSQL文が識別され、アップグレードの影響を評価**できます。

【重要】
アップグレード計画においては何が重要かを問われる。
アップグレードのテストを行うこと、パフォーマンスのテストは頻出