初めに、本番環境のデータベースをOracle Database Cloud Serviceにコピーして、12c R2のテスト環境を作成する。
それには、Oracle Database Cloud Serviceのサービスコンソールで「サービスの作成」を行い、データベース作成画面で「サービス・レベル」や「請求頻度」「ソフトウェア・リリース」(Oracle Databaseのバージョン)「ソフトウェア・エディション」などを指定する。このうち、「ソフトウェア・エディション」では、Oracle RATを使うために「Enterprise Edition - High Performance」を指定する(次の画面は2016年11月時点のもの)。
さらに、詳細画面でデータベース名や仮想マシンに付与するCPU数、メモリ容量などを指定してデータベースを作成すると、数分〜数十分後に指定したバージョン/エディションのOracle Databaseインスタンスが作られ、割り当てられたパブリックIPにSSHで接続できるようになる。
オンプレミスからOracle Database Cloud Serviceへのデータベースのコピーに関して、特別な作業は必要ない。
「Oracle Database Cloud Serviceでは仮想マシンのレイヤーにアクセスできるため、オンプレミスと同様の手順でExport/Import、トランスポートなどによってデータベースをコピーできます。トランスポートで移行する場合、オンプレミス側でデータベースをエクスポートし、そのファイルとメタデータをOracle Database Cloud Serviceに転送してインポートするだけです」(長内氏)
なお、Oracle Database Cloud Serviceで12cのデータベースを作る場合、デフォルトではプラガブルデータベース(PDB)によるマルチテナント構成となる。コンテナデータベースではない(非CDB)構成のデータベースからPDBにデータベースを移行する方法はバージョンによって異なるため、事前に確認されたい。
テスト環境を準備したら、本番環境でSTSを作成する。この作業はOracle Enterprise Managerで行える。具体的には、Oracle Enterprise Manager上で本番環境のデータベースを選択し、「パフォーマンス」メニューから「SQL」→「SQLチューニング・セット」を選ぶ。するとSTS作成画面が表示されるので、ここでSTS名(SQLチューニング・セット名)やSTSの取得条件などを指定すると、その条件でSTSが作成される。
続いて、作成したSTSを本番環境からエクスポートし、Oracle Database Cloud Serviceのテスト環境にインポートする。
それには、Oracle Enterprise Manager上で対象のSTSを選んでダンプファイルを作り、これをOracle Database Cloud Serviceに転送する。
次に、Oracle Enterprise ManagerでOracle Database Cloud Service上のテスト環境のデータベースにログインし、転送したダンプファイルをインポートする。
以上でテスト環境の準備は完了だ。
テスト環境が準備できたら、インポートしたSTSから本番環境の性能値を抽出する。
具体的には、Oracle Enterprise Managerの「パフォーマンス」メニューから「SQL」→「SQLパフォーマンス・アナライザ・ホーム」を選び、表示された画面で「ガイド付きワークフロー」をクリックする。その結果、画面の指示に従って一連のテスト作業が行える「ガイド付きワークフロー」画面が表示されるので、後はこの画面の指示に従ってテスト作業を進めればよい。
「ガイド付きワークフロー」によるテストは5つのステップから成り、ステップ1、2までの操作でSTSから性能値を抽出する。
次に、「ガイド付きワークフロー」のステップ3で、テスト環境に対してSQLを実行して性能値を取得する。「作成方法」から「SQLをローカルで実行」を選ぶと、STSに記録された本番環境と同じSQLがテスト環境で順次実行され、その性能値が記録される。
テスト環境におけるテストが完了したら、「ガイド付きワークフロー」のステップ4に進み、テスト結果の比較方法(レポーティング方法)を指定する。比較は、「オプティマイザ・コスト」や「経過時間」など、さまざまな観点で行える。
次に「ガイド付きワークフロー」のステップ5で、指定した比較方法によるテストレポートを確認する。
この画面で「エラーのあるSQL文」の数字をクリックすると、テスト環境でエラーとなるSQL文の内容とエラーメッセージが表示される。
また、「SQL文の数」の「新規計画」をクリックすると、実行計画の変更によって性能が低下したSQL(下向き矢印が付いたSQL)を確認できる。
これらのレポートの内容を参考にしてSQLをチューニングしたら、再びテスト環境に対してテストを行う。それには、このテストタスクで「SQL試行の作成」を実行する。
すると、再びテスト環境に対してSTSを使ったテストが実行され、本番環境との比較結果のレポートが作成される。このレポートにより、チューニングによって性能がどう改善したかを見ることができる。
Copyright © ITmedia, Inc. All Rights Reserved.
提供:日本オラクル株式会社
アイティメディア営業企画/制作:@IT 編集部/掲載内容有効期限:2017年2月11日
驚異的なパフォーマンス、優れた運用効率、最高の可用性とセキュリティ、クラウド対応を実現するOracle Exadataとの統合、クラウド、可用性や運用管理など、次世代データベース基盤構築のために参考になる必見資料をまとめてご紹介いたします。