Upload
vuongdiep
View
229
Download
4
Embed Size (px)
Citation preview
<Insert Picture Here>
絶対成功! データベース・アップグレードの極意
日本オラクル株式会社 2012年06月20日
第84回 夜な夜な! なにわオラクル塾
Copyright© 2012, Oracle . All rights reserved.
.
2
以下の事項は、弊社の一般的な製品の方向性に関する概要を説明するものです。また、情報提供を唯一の目的とするものであり、いかなる契約にも組み込むことはできません。以下の事項は、マテリアルやコード、機能を提供することをコミットメント(確約)するものではないため、購買決定を行う際の判断材料になさらないで下さい。オラクル製品に関して記載されている機能の開発、リリースおよび時期については、弊社の裁量により決定されます。
OracleとJavaは、Oracle Corporation 及びその子会社、関連会社の米国及びその他の国における登録商標です。文中の社名、商品名等は各社の商標または登録商標である場合があります。
Copyright© 2012, Oracle . All rights reserved.
.
アジェンダ
パフォーマンス管理
結論
一般的な準備のステップ
アップグレード & 移行ケース
フォールバック・ストラテジ
導入 & 概要
3
Copyright© 2012, Oracle . All rights reserved.
.
c
アジェンダ
アップグレード& 移行
導入
パフォーマンス管理
結論
一般的な準備のステップ
アップグレード & 移行ケース
フォールバック・ストラテジ
導入 & 概要
4
Copyright© 2012, Oracle . All rights reserved.
.
用語 • データベース・アップグレード
• データ・ディクショナリーを新しいバージョンにアップグレードすることをデータベースのアップグレードとする
• JAVAVM, SDO などのオラクルのコンポーネントも含まれる
• データへの接触や変更、移動はない
• 移行
• データベースを新たな環境へ移動すること:
• ハードウェア・システム
• オペレーション・システム / プラットフォーム
• キャラクタ・セット
• ソフトウェア・アップグレード
• データベースではなくOracleのソフトウェアをアップグレードすること
• In-place ソフトウェア・アップグレード
• 既存のソフトウェアの格納先に新規ソフトウェアをインストール
• out-of-place ソフトウェア・アップグレード
• 既存ソフトウェアとは別の新規ソフトウェア用の格納先にインストール
5
Copyright© 2012, Oracle . All rights reserved.
.
ライフタイム・サポート・ポリシー
t 2008
2003
2004
2005
2006
2007
2002
2009
2010
today
20
11
2012
2013
2014
Sustaining Support
Premier Support
R2 2007年7月
Extended Support 2010年7月
2009年1月 2012年1月
R2 2010年7月 2013年7月
2015
2016
2012年8月 2015年8月
2008年7月
2011年7月
R2
2017
2018
2015年1月
6
Copyright© 2012, Oracle . All rights reserved.
.
パッチセットのロードマップ
7
• Release Schedule of Current Database Releases Note.742060.1
リリース パッチ終了日
11.2.0.3 TBD
11.2.0.2 28-Feb-2013
11.2.0.1 13-Sep-2011
11.1.0.7 31-Aug-2015
11.1.0.6 18-Sep-2009
10.2.0.5 31-Jul-2013
Copyright© 2012, Oracle . All rights reserved.
.
ドキュメント • Note:601807.1 Upgrade Companion 11g:
• KROWN# 134166: Oracle Database 11gR1 Upgrade Companion – 目次
• Note:785351.1 Upgrade Companion 11g Release 2:
• KROWN# 141177: Oracle Database 11gR2 Upgrade Companion – 目次
8
Copyright© 2012, Oracle . All rights reserved.
.
ドキュメント
• Oracle Databaseアップグレード・ガイド11g リリース2(11.2) http://download.oracle.com/docs/cd/E11882_01/server.112/e10819/toc.htm
http://docs.oracle.com/cd/E16338_01/server.112/b56310/toc.htm (日本語)
• 重要なNote • Note:837570.1
Complete Checklist for Manual Upgrades to 11g Release 2
• Note: 421191.1 Complete checklist for manual upgrades from X to Y
• 参考情報 • 絶対成功! データベース・アップグレードの極意
https://blogs.oracle.com/dbjp/entry/upgrade_000249
9
Copyright© 2012, Oracle . All rights reserved.
.
OTN Upgrade Page
• http://www.oracle.com/technetwork/jp/database/upgrade/index.html
10
Copyright© 2012, Oracle . All rights reserved.
.
アジェンダ
導入
アップグレード & 移行
パフォーマンス管理
結論
一般的な準備のステップ
アップグレード & 移行ケース
フォールバック・ストラテジ
導入 & 概要
11
Copyright© 2012, Oracle . All rights reserved.
.
アップグレード方法の選択 検討すべきアップグレード方法
12
• Database Upgrade Assistant (DBUA) の利用
• Command Line Interface (CLI) の利用
• Oracle Data Guard
既存のデータベースを利用
(アップグレード)
• Export / Import (Exp/Imp)
• Data Pump
• トランスポータブル表領域 (TTS)
• Oracle GoldenGate
• Oracle Data Guard
新規にデータベースを作成
(データ移行)
Copyright© 2012, Oracle . All rights reserved.
.
アップグレード方法の選択 アップグレード方法の特徴
13
アップグレード方式
異なる
断片化
の解消
切り
戻し
中間
ファイル
移行
時間
システム
停止時間 H/W OS ブロック
サイズ
キャラクタ
セット
DBUA △ ※1
× × × × ○ 不要 小 小
CLI ○ × × × × ○ 不要 小 小
Data Pump (10.1-) ○ ○ ○ ○ ○ △ 不要 ※3
データ量
比例 中
Exp/Imp ○ ○ ○ ○ ○ △ 必要 データ量
比例 大
トランスポータブル
表領域 (8i -) ○
△※2
× × × ○ 必要
データ・
ファイル
容量比例
小
Oracle GoldenGate ○ ○ ○ ○ △ ○ 不要 極小 極小
Oracle Data Guard
フィジカル・スタンバイ
○ × × × × ○ 不要 極小 極小
※1. 移行先環境に旧バージョンの DB を構築することで可能
※2. Recovery Manger (RMAN) を使用することで可能 ※3.NETWORK_LINK インポートを使用することで可能
Copyright© 2012, Oracle . All rights reserved.
.
アップグレードおよび移行パス
Stay on same OS? N Y
UPGRADE Export/Import
CTAS, COPY
Transportable Tablespaces
Transportable Database
Oracle Streams
DBUA
Downtime >30min?
Y
N
SQL Apply &
Transient Standby
CLI
SQL> @catupgrd
Oracle Golden Gate
14
Copyright© 2012, Oracle . All rights reserved.
.
アジェンダ
導入&概要
一般的な準備のステップ
パフォーマンス管理
結論
アップグレード & 移行ケース
フォールバック・ストラテジ
サニティ&
パフォーマンス
推奨
パッチと適用
15
Copyright© 2012, Oracle . All rights reserved.
.
サニティ・オペレーション
• ここで紹介するサニティ・オペレーションは全てのアップグレードおよび移行計画に当てはまる
• いずれのやり方を選択しても、推奨される全てのサニティ・オペレーションを行ったことを確認
16
Copyright© 2012, Oracle . All rights reserved.
.
サニティ・オペレーション: INVALIDオブジェクト
• INVALIDなオブジェクトをチェック
• SQL>
• アップグレード/移行の前にすべてのINVALIDなオブジェクトを修正
• SYSおよびSYSTEMユーザー・スキーマ内にinvalidなオブジェクトはなくす
• アップグレード前にutlrp.sqlでinvalidなオブジェクトを再コンパイルする
select unique OBJECT_NAME, OBJECT_TYPE,
OWNER from DBA_OBJECTS where
STATUS='INVALID';
17
Copyright© 2012, Oracle . All rights reserved.
.
サニティ・オペレーション: 重複オブジェクト
• SYS/SYSTEMの重複オブジェクトをチェック
• SQL>
• アップグレード前にSYS/SYSTEMの重複オブジェクトを修正
• Note:1030426.6 How to Clean Up Duplicate Objects Owned by SYS and SYSTEM Schema
select OBJECT_NAME, OBJECT_TYPE from
DBA_OBJECTS where OBJECT_NAME||OBJECT_TYPE
in (select OBJECT_NAME||OBJECT_TYPE from
DBA_OBJECTS where OWNER='SYS') and
OWNER='SYSTEM' and OBJECT_NAME not in
('AQ$_SCHEDULES_PRIMARY', 'AQ$_SCHEDULES',
'DBMS_REPCAT_AUTH');
18
Copyright© 2012, Oracle . All rights reserved.
.
サニティ・オペレーション: INVALIDなコンポ―ネント
• VALIDでないコンポーネントをチェック
• SQL>
• アップグレード前に全てのVALIDでないコンポーネントを修正を試行
• utlrp.sqlでの再コンパイルでもコンポーネントのステータスが修正されない場合、追加の診断が必要: • Note:472937.1 Information On Installed Database Components
• Note:753041.1 How to diagnose Components with NON VALID status
select substr(COMP_ID, 1,10) compid,
substr(COMP_NAME,1,24) compname, STATUS,
VERSION from DBA_REGISTRY where
STATUS<>'VALID';
19
Copyright© 2012, Oracle . All rights reserved.
.
サニティ・オペレーション: Recycle Bin
• 10g もしくは11gからのアップグレードの場合, recyclebinをパージする
SQL> purge DBA_RECYCLEBIN;
20
Copyright© 2012, Oracle . All rights reserved.
.
サニティ・オペレーション: 古いパラメータ
_always_semi_join=off
_unnest_subquery=false
<...>
optimizer_features_enable=9.2.0.8 <...>
event = "10061 trace name context forever, level 10" <...>
• init.ora/spfileから以前のパラメータや隠しパラメータ、イベントのパラメータの設定を取り消す
• 例:
21
Copyright© 2012, Oracle . All rights reserved.
.
サニティ・オペレーション: 古いパラメータ Real World Crosscheck(事例)
• 9.2.0.8から11.2へORDIMコンポーネントをアップグレード
• 下記アンダースコアのパラメータとイベントが設定parameters and events were set:
_complex_view_merging = FALSE
_multi_join_key_table_lookup = FALSE
_library_cache_advice = FALSE
_index_join_enabled = FALSE
_push_join_union_view = FALSE
_push_join_predicate = FALSE
_always_semi_join = OFF
_pred_move_around = FALSE
_unnest_subquery = FALSE
_predicate_elimination_enabled = FALSE
_eliminate_common_subexpr = FALSE
_no_or_expansion = FALSE
event = '600 trace name systemstate level 10'
event = '600 trace name errorstack level 10'
event = '942 trace name errorstack level 10'
event = '54 trace name systemstate level 10'
event = '54 trace name errorstack level 10'
event = '7445 trace name systemstate level 10'
event = '7445 trace name errorstack level 10'
event = '10195 trace name context forever, level 1'
event = '10778 trace name context forever, level 1‘
Upgrade time:
49 minutes
Upgrade time:
7 minutes!!
アンダースコアと
イベントの設定解除
22
Copyright© 2012, Oracle . All rights reserved.
.
準備 – テスト
• アップグレードのテスト
• 機能テスト– アップグレードは成功して完了するか?
• パフォーマンステスト– アップグレードにかかる時間はどのくらいか?
• アップグレード後のアプリケーションテスト
• 機能テスト
• アプリケーションが正しく動作しているか?
• パフォーマンステスト
• アップグレード前にパフォーマンスに関するデータを取得
• 時間的要件の高いクエリ、レポーティング処理およびバッチジョブ
• init.ora パラメータや, OSのパラメータをチューニングする
• 実際の運用時の負荷を使用!
• Real Application Testing
• SQL Performance Analyzer
• Database Replay
23
Copyright© 2012, Oracle . All rights reserved.
.
準備 – パフォーマンス
• アップグレードより前に十分なパフォーマンス・データを収集
することは、極めて重要
• “十分な”が意味するところ: 少なくともアップグレードの31日前に開始
• 正確なパフォーマンス統計を収集
• Oracle 8i/9i の場合:
• STATSPACK を使用
• アップグレード直前に、PERFSTAT ユーザーをエクスポート
• Note:466350.1 STATSPACK before/after upgrade
• Oracle 10g/11g の場合:
• AWR を使用
• 30-60 分毎にスナップショットを取得 – 保存: >30 日
• AWRを抽出: SQL> @?/rdbms/admin/awrext.sql • => 10.1 のみ次を使用: DBMS_SWRF_INTERNAL.EXTRACT_AWR
• アップグレード前後のパフォーマンス比較のためにAWR DIFF レポートを使用: DBMS_WORKLOAD_REPOSITORY.AWR_DIFF_REPORT_HTML
• アップグレード中のオプティマイザ(CBO)の統計を管理: Note:465787.1
•
24
Copyright© 2012, Oracle . All rights reserved.
.
ネットワークの制約や転送率
• ネットワーク転送率の理論値:
• プロトコル転送:
• ftp, scp, NFS はすべてデフォルトでシングルスレッドパラレルコピーを使用する
• 異なるネットワークセグメント
• リピーターやスイッチがスローダウンの原因に
• セキュリティ設定
• ファイアーウォールがすべての性能への取り組みを台無しにすることも
• 外部のネットワークプロバイダー
• 長距離
Interface Data Volumne Maxium Transfer Speed
100 Mbit Ethernet 11MB/sec 40 GB/hour (best case approach)
1 Gbit Ethernet 110MB/sec 400 GB/hour (best case approach)
10 Gbit Ethernet 1.1GB/sec 4 TB/hour (best case approach)
IB 4XQDR 4GB/sec (theoretical)
3GB/sec (realistic)
14 .4TB/hour (best case approach)
10.8TB/hour
25
Copyright© 2012, Oracle . All rights reserved.
.
アジェンダ
導入&概要
一般的な準備のステップ
パフォーマンス管理
結論
アップグレード & 移行ケース
フォールバック・ストラテジ
推奨
サニティ&
パフォーマンス
パッチと適用
26
Copyright© 2012, Oracle . All rights reserved.
.
Oracle 11.2の推奨パラメータ
• SEC_CASE_SENSITIVE_LOGON
• デフォルト: TRUE
• 値: TRUE
FALSE
• 目的: パスワードの大/小文字区別のオン/オフを切り替える
注意: データベース・リンクに対しても有効となる!
• Note: 11.2 のパスワードは “salt”を使用!!!
• 情報:
• 推奨: SEC_CASE_SENSITIVE_LOGON=TRUE “Salt” アルゴリズムを使用するため
SELECT username, password_versions FROM dba_users;
USERNAME PASSWORD_VERSIONS
---------- -----------------
JONES 10G 11G
PRESTON 11G
BLAKE 10G 作成時のバージョン
変更時のバージョン
27
Copyright© 2012, Oracle . All rights reserved.
.
Oracle 11.2の推奨パラメータ
• AUDIT_TRAIL
• デフォルト: NONE or DB
• 値: NONE
OS
XML
DB
DB_EXTENDED
• 目的: データベース監査のオン/オフ、監査ログの出力先を決定。 アップグレード時、AUDIT_TRAILは9.2/10.1/10.2 (NONE)
のデフォルトを保持。 11g データベースをゼロから作成 した場合、デフォルトはDBとなり、監査ログはSYS.AUD$内
に記録される
• 推奨:
Oracle 11g databaseへ明示的にAUDIT_TRAILをセット
28
Copyright© 2012, Oracle . All rights reserved.
.
Oracle 11.2の推奨パラメータ
• DEFERRED_SEGMENT_CREATION
• デフォルト: TRUE
• 値: TRUE
FALSE
• 目的:
行が挿入された時、新たに作成された表は、そこではじめてセグメントを割り当てる
• 表領域はローカル管理である必要あり
• COMPATIBLE ≥ 11.2.0
• 新しい動作 - 11gR2 ではデフォルト
• 利点: • 多数の表が作成されるが、データが投入されない時、ディスク領域の節約
になる。
• アプリケーションのインストール時間を削減
• 参照:
• 最初の行を挿入する時、少しパフォーマンス劣化あり。なぜならその際に新しいセグメントが作成されるため。
29
Copyright© 2012, Oracle . All rights reserved.
.
• 10g R2で、複合ビュー構造のセキュリティに関する オプティマイザの問題を防ぐには:
• optimizer_secure_view_merging=false
• これをおこなわないと、複数の異なるユーザー・スキーマから同じオブジェクトに対する同じ文が発行された場合に、オプティマイザがそれぞれ異なる実行計画を作成する可能性がある。
• 代替手段: 特定のユーザーにMERGE ANY VIEW権限を付与する
• 参照 Note:567135.1
• 11.2では共有プールの高騰につながる可能性がある
Oracle 11.2の推奨パラメータ
30
Copyright© 2012, Oracle . All rights reserved.
.
その他の変更点
• CONNECT ロールの変更(10.2 ~)
• 共有プールの計算(10g ~)
• GROUP BY の結果(10g ~)
31
Copyright© 2012, Oracle . All rights reserved.
.
CONNECT ロールから権限の削除
32
• CONNECTロールは10g R2以降、次のように変更:
GRANTEE PRIVILEGE
---------- -------------------
CONNECT CREATE VIEW
CONNECT CREATE TABLE
CONNECT ALTER SESSION
CONNECT CREATE CLUSTER
CONNECT CREATE SESSION
CONNECT CREATE SYNONYM
CONNECT CREATE SEQUENCE
CONNECT CREATE DATABASE LINK
GRANTEE PRIVILEGE
------------ ---------------
CONNECT CREATE SESSION
R2
SELECT grantee
FROM dba_role_privs
WHERE granted_role = 'CONNECT'
and grantee NOT IN
('SYS','OUTLN','SYSTEM','CTXSYS'
,'DBSNMP','LOGSTDBY_ADMINISTRATO
R','ORDSYS','ORDPLUGINS','OEM_MO
NITOR','WKSYS','WKPROXY','WK_TES
T','WKUSER','MDSYS','LBACSYS','D
MSYS','WMSYS','EXFSYS','SYSMAN',
'MDDATA','XDB','ODM','SI_INFORMT
N_SCHEMA');
影響を受けるデータベース・ユーザを検出
Copyright© 2012, Oracle . All rights reserved.
.
共有プールの計算
33
• 10g以降、shared_pool_size パラメータの計算方法が変更
実際の共有プール = shared_pool_size – 起動オーバーヘッド
SQL> select * from v$sgainfo;
NAME BYTES RES
-------------------------------- ---------- ---
Fixed SGA Size 1266372 No
Redo Buffers 2924544 No
Buffer Cache Size 16777216 Yes
Shared Pool Size 83886080 Yes
Large Pool Size 0 Yes
Java Pool Size 50331648 Yes
Streams Pool Size 0 Yes
Granule Size 4194304 No
Maximum SGA Size 155189248 No
Startup overhead in Shared Pool 29360128 No
Free SGA Memory Available 0
Copyright© 2012, Oracle . All rights reserved.
.
GROUP BY の結果
34
• "Hash Group by" 集計により、ハッシュ・アルゴリズムでGROUP BY 文を処理可能に
• 結果的に、ソートされない
• ソートには、ORDER BY を使用する必要がある
select sum(sal), deptno from scott.emp group by deptno;
SUM(SAL) DEPTNO ---------- ----------
8750 10
10875 20
9400 30
SUM(SAL) DEPTNO ---------- ---------
9400 30
10875 20
8750 10
10g, 11g :
Copyright© 2012, Oracle . All rights reserved.
.
アジェンダ
導入&概要
一般的な準備のステップ
パフォーマンス管理
結論
アップグレード & 移行ケース
フォールバック・ストラテジ パッチと適用
サニティ &
パフォーマンス
推奨
35
Copyright© 2012, Oracle . All rights reserved.
.
11.2のインストール
最新のパッチセットを新しいOracle ホームへインストール
(パッチセットは11.2 からフルインストレーションへ変更)
最新のpatch set update (PSU) の適用
bundled patches (BP) の適用
必要なone-off patch の適用
データベースのアップグレード/移行を開始
36
Copyright© 2012, Oracle . All rights reserved.
.
11.2.0.3 のインストール
• support.oracle.com から11.2.0.3 のパッチセットをダウンロード
37
Copyright© 2012, Oracle . All rights reserved.
.
推奨パッチの確認
• データベースの推奨パッチの確認: Note:756671.1
38
Copyright© 2012, Oracle . All rights reserved.
.
推奨パッチの確認
• データベースの推奨パッチの確認: Note:756671.1 • 11.2.0.3 へ適用すべき推奨パッチ (2012/04/18 現在)
39
Copyright© 2012, Oracle . All rights reserved.
.
パッチ・セット・アップデート(PSU) のインストール
• 最新のPSU の適用
• Note:854428.1: Patch Set Updates for Oracle Products
• Note:1227443.1: Patch Set Updates Known Issues Notes
• Database PSU に含まれる変更:
• 多くの顧客に影響を及ぼし、公知の重篤な問題に対する修正
• クリティカル・パッチ・アップデート(CPU) に含まれる全ての修正
• Database PSU に含まれていない変更:
• 再サーティファイが必要な変更
• 製品の設定変更が必要になる修正
• 25-100 の新しいバグ修正がPSUに含まれる – 累積
• RAC ローリング・アップグレードが保証される
• CPUと同じスケジュールで、4半期ごとにリリースされる
• 2012/1/17、 2012/4/17、 2012/7/17、 2012/10/16
• PSU の確認: opatch lsinventory -bugs_fixed | grep -i 'DATABASE PSU'
40
Copyright© 2012, Oracle . All rights reserved.
.
• 重要なアラートの確認: Note:161818.1
重要なアラートと個別パッチ
‘click’
41
Copyright© 2012, Oracle . All rights reserved.
.
アップグレード情報 / アラート
• 11.2.0.x の既知の問題: Note:880782.1
‘click’
42
Copyright© 2012, Oracle . All rights reserved.
.
アップグレード情報 / アラート
• 11.2.0.3のアラート Note:1348336.1
43
Copyright© 2012, Oracle . All rights reserved.
.
推奨のOSパッチ
• Note:169706.1: OS Installation and Configuration
44
Copyright© 2012, Oracle . All rights reserved.
.
アジェンダ
パフォーマンス管理
結論
導入 & 概要
一般的な準備のステップ
フォールバック・ストラテジ
アップグレード & 移行ケース
RACへのアップグレード
+ ASM
エンディアン移行
ゼロ・ダウンタイム?
Unicodeへの変更
Exadataへのクロス
プラットフォームTTS
45
Copyright© 2012, Oracle . All rights reserved.
.
Case 1 – RACアップグレードとASMへの移行 Facts & Description
1. Oracle 11.2へのアップグレードおよびデータベースの ASMへの移行
2. ハードウェアを新しいクラスタ環境へ移行
3. データベースのサイズは: 5TB
4. 最大許容ダウンタイムは4時間
Oracle RAC 11.2.0.3
in Oracle ASM OEL5– 64bit
Oracle RAC 10.2.0.5
on OCFS RHEL3 – 32bit
46
Copyright© 2012, Oracle . All rights reserved.
.
レイアウトとプロジェクト計画 移行元 移行先
1s. オンライン・バックアップの取得 1d. Grid Infrastructureのインストール(11.2.0.3)
2s. バックアップを移行先へコピー 2d. Oracle Databaseのインストール(11.2.0.3)
3d. Oracle Databaseのインストール(10.2 +10.2.0.5)
4d. ASMインスタンスの設定と起動
5s. スタンバイ環境の init.ora/tns の準備 5d.スタンバイ環境のinit.ora/tns の準備
6d. RMANによるASMへのデータベース・リストア
7s. ログ転送の開始 7d. 移行元(Source)と同期
8s. アプリケーションの停止 8d. スタンバイ環境の起動とアップグレード +Extra
Oracle RAC 11.2.0.3
in Oracle ASM OEL5– 64bit
Oracle RAC 10.2.0.5
on OCFS RHEL3 – 32bit
47
Copyright© 2012, Oracle . All rights reserved.
.
Information
• フィジカル・スタンバイ・データベースを使用し、最小限のダウンタイムで新しいハードウェアにデータベース環境を移行
• 迅速かつシンプルに設定および移設が可能
• いくつかのケースでは異なるプラットフォーム間の対応が必要:
• HP-PA 11.23 HP-IA64 in Oracle 9.2.0.7/8 and ≥10.2.0.2
• See: Note:395982.1
• MS Windows Linux from Oracle ≥11.1.0.6
• サポートされる組合せ: Note:413484.1
• 現時点では異なるエンディアンでの組合せは利用できない
• さらに、できるだけ繰り返しテストを実施する
48
Copyright© 2012, Oracle . All rights reserved.
.
ASMへの移行
• ダウンタイムのオプション:
• RMANを用い、データベースをOracle ASMへリストア
• ダウンタイムを1分未満にするためのオプション: • RMANを用い、スタンバイ用のデータベースをOracle ASMへリストア
• データベースのアップグレードが不要な場合:
• 単純なロールの変換のみ: スイッチオーバー
• ASM移行の後にデータベースのアップグレードが必要な場合:
• スタンバイ・データベースの有効化
• 有効化したデータベースのアップグレード
• 失敗しても、移行元データベースは変更されずに残ったまま
49
Copyright© 2012, Oracle . All rights reserved.
.
Grid Infrastructureのインストール
• Oracle Grid Infrastructure 11.2において、ASMとOracle Clusterwareは「Grid Infrastructure home」と呼ばれる、一つのホーム・ディレクトリに
インストールされる
• しかしながら、Oracle ClusterwareとASMは別製品となっている
• Grid Infrastructureのバージョンは管理対象のASMやRDBMSといった
リソースのバージョンと同じかそれ以上であるべき
• 常にOracle Clusterwareは最初にインストール(もしくはその後:アップグレード)
• 新しいGrid Infrastructure homeにインストールする
• Grid Infrastructure homeの一部は'root'の所有となる
• 既存の問題を回避する為にNote:948456.1を必ず確認する
• Windows (32-bit)において、32bitのGrid InfrastructureおよびASMは提供されない
50
Copyright© 2012, Oracle . All rights reserved.
.
Grid Infrastructureのインストール
• Oracle Home/Base
• Grid InfrastructureにとってのORACLE_BASEは、Oracle DatabaseにとってのORACLE_BASEとは異なる
• それぞれのインストール・ユーザがそれぞれのORACLE_BASEを
所有すべき
51
Copyright© 2012, Oracle . All rights reserved.
.
GIのアップグレードの計画、準備、前提条件
• RAC Starter Kits • Oracle Real Application Clusters (RAC) Starter Kitの目的は一般的でかつプラットフォームに依存したOracle RAC clusterの実装の為のベスト・プラクティスと最新の情報を提供すること
• 常にGeneric noteとプラットフォームに依存したnoteを参照のうえ開始する
• MOS Note: 810394.1 - RAC and Oracle Clusterware Starter Kit and Best Practices (Generic)
• MOS Note: 811306.1 - RAC and Oracle Clusterware Starter Kit and Best Practices (Linux)
• MOS Note: 811271.1 - RAC and Oracle Clusterware Starter Kit and Best Practices (Windows)
• MOS Note: 811293.1 - RAC and Oracle Clusterware Starter Kit and Best Practices (AIX)
• MOS Note: 811303.1 - RAC and Oracle Clusterware Starter Kit and Best Practices (HP-UX)
• MOS Note: 811280.1 - RAC and Oracle Clusterware Starter Kit and Best Practices (Solaris)
• 加えて、とても使いやすい追加情報のnote:
• MOS Note: 1096952.1 - Master Note for RAC, Clusterware and Grid Infrastructure
• MOS Note: 1053147.1 - 11.2 Clusterware and Grid Home – What you need to know!
52
Copyright© 2012, Oracle . All rights reserved.
.
Clusterware、ASMおよびDBの互換性
Note: 337737.1
a) The Matrix is valid after the (rolling) upgrade has been completed.
During the upgrade you may use an older ASM version.
b) The ASM version needs to be at least 10.1.0.3
53
Copyright© 2012, Oracle . All rights reserved.
.
ストレージの準備
• Note 452924.1 - How to Prepare Storage for ASM
• Raw disk
• Logical unit numbers (LUNs)
• Raw logical volumes (LVM)
LVM設定はストレージ管理機能が重複することになり、Oracleとしては推奨していない
• NFS files
テスト用途には適切。しかし本番環境用途に設定するのは推奨していない
54
Copyright© 2012, Oracle . All rights reserved.
.
ASMCAを使用したASMの構築
55
Copyright© 2012, Oracle . All rights reserved.
.
アップグレード
• シャットダウンして、UPGRADEモードで起動
• SQL> startup upgrade
• 全てのパッケージと格納されたコードを無効化(32bit64bit) • SQL> @?/rdbms/admin/utlirp.sql
• 再コンパイルを実施 • SQL> @?/rdbms/admin/utlrp.sql
• もう一度シャットダウンと起動を行い、アップグレード・チェック・スクリプトを実行 • SQL> @?/rdbms/admin/utlu112i.sql
• アップグレード実施時に全ての推奨事項を適用
56
Copyright© 2012, Oracle . All rights reserved.
.
アップグレード前情報スクリプトの実行
• アップグレード前情報スクリプト Oracle 11g R2 へアップグレードする場合 : utlu112i.sql
• アップグレード対象データベースを事前チェック
• チェック対象 (一部抜粋)
• 初期化パラメータ
• コンポーネント
• SYSAUX 表領域の有無とサイズの適正
• タイムゾーン・ファイルのバージョンチェック
• 実行方法
1. Oracle 11g R2 をインストールした環境の$ORACLE_HOME/rdbms/admin/utlu112i.sql を取得、
またはNote: 884522.1 からダウンロード
2.アップグレード前 (9.2.0.8、10.1.0.5、10.2.0、11.1.0) の環境にコピーし、1. で取得したスクリプトを実行
57
Copyright© 2012, Oracle . All rights reserved.
.
+ Extra
• データベースとインスタンスをクラスタウェアに登録 • $> srvctl add database -d PROD -o
/oracle/base/product/11.2.0/dbhome -p
'+DG1/prodspfile.ora'
• $> srvctl add instance -d PROD -i PROD1 -n mynode1
• ASMディスク・グループのcompatibilityの値に11.2を設定 • ASMCA> alter diskgroup data set attribute 'compatible.asm'='11.2';
• ASMCA> alter diskgroup data set attribute 'compatible.rdbms'='11.2';
• OCRと投票ディスクをASMへ移動 • $> ocrconfig -add +data
• $> ocrconfig -delete /dev/raw/raw1
• $> crsctl replace votedisk +VOTING
• 初期化パラメータCLUSTER_DATABASEにTRUEを設定し、全ノードのイン
スタンスを起動
58
Copyright© 2012, Oracle . All rights reserved.
.
ケース1 の整理 結論とまとめ
1.新しいサーバにOracle Softwareをインストールし、パッチを適用する
2.新しいサーバにシングル・インスタンス10.2のインストールを準備
3. ASMの設定
4. フィジカル・スタンバイ・データベースの設定
5. スタンバイ環境を有効化し、パッケージとコードを無効化した上でアップグレード処理を実行
6. クラスタウェアとSRVCTLの構成
7. OCRと投票ディスクをASMに移動
Oracle RAC 11.2.0.3
in Oracle ASM OEL5– 64bit
Oracle RAC 10.2.0.5
on OCFS RHEL3 – 32bit
59
Copyright© 2012, Oracle . All rights reserved.
.
アジェンダ
パフォーマンス管理
結論
導入 & 概要
一般的な準備のステップ
フォールバック・ストラテジ
アップグレード & 移行ケース エンディアン移行
RACへのアップグレード
+ASM
ゼロ・ダウンタイム?
Unicodeへの変更
Exadataへのクロス
プラットフォームTTS
60
Copyright© 2012, Oracle . All rights reserved.
.
ケース 2 – エンディアン移行 & アップグレード Facts & Description
1. Oracle 9.2 on HP-UX からOracle 11.2 on OEL5 (Exadata) への移行
2. ハードウェアとOSエンディアンの移行
3. データベース・サイズ: 8.5TB
4. 最大許容ダウンタイム: 24 時間
Oracle 9.2.0.7 HP-UX 11.11 PA RISC
»»ビッグ・エンディアン««
Oracle 11.2.0.2
OEL5.3 64bit »»リトル・エンディアン««
61
Copyright© 2012, Oracle . All rights reserved.
.
レイアウトとプロジェクト計画 移行元 中間システム 移行先
オンライン・バックアップ完了 空データベース構築
バックアップのリストア
データベースを11.2へアップグレード
中間システムへDBリンク作成
新DBへデータ移行
Oracle 9.2.0.7 HP-UX 11.11 PA RISC
»»ビッグ・エンディアン««
Oracle 11.2.0.2
OEL5.3 64bit »»リトル・エンディアン««
中間
システム
62
Copyright© 2012, Oracle . All rights reserved.
.
エクスポート/インポート: 従来のexp/imp
$ exp FULL=Y $ imp FULL=Y D
um
p F
ile
Tra
ns
fer
• インポートはOracle V5 以降全てのバージョンで可能
• “exp” は11g ではサポートされない • ユーティリティは残り、使用可能
• “imp” は古いダンプファイルをインポートするために、サポートされる
• 高速ではないが、よく知られていて信頼がある • データ量と実行時間の関係
63
Copyright© 2012, Oracle . All rights reserved.
.
エクスポート/インポート: Data Pump expdp/impdp
• “新しく” より高速なエクスポート/インポート, 10.1から可能 • 10.2ではXMLSCHEMAタイプを除くすべてのデータ・タイプを扱うことが可能
• 11.1では全てのデータ・タイプを扱うことが可能
• 強力なコンセプト: • PARALLEL: データのパラレル処理 (メタデータはシングルスレッド)
• EXCLUDE & INCLUDE (例はNote:341733.1 参照)
• COMPRESS=ALL :11.1以降 (Advanced Compression Option)
$ expdp FULL=Y $ impdp FULL=Y D
um
p F
ile
Tra
ns
fer
64
Copyright© 2012, Oracle . All rights reserved.
.
エクスポート/インポート: expdp/impdp ヒント
• ダンプ・ファイルは常にBINARY モードで転送
• データベースをフル・エクスポートする場合、常にSYSTEM ユーザで実行
• 一貫性のあるエクスポートを保証
• パラレルDMLを許可
• SYS のオブジェクトに対するGRANT は、個別にエクスポートする必要がある
• 相互互換性情報: Note:553337.1
• パフォーマンス:
• Data Pump は与えられた全てのリソースを活用する
• CPU数の最大2倍の値をPARALLELに指定する
• 使用可能で最も高速な方法を自動的に選択する: ダイレクト・パス, 外部表, もしくは従来型パス
• インポートのパフォーマンス
• エクスポートもしくはインポートにおけるEXCLUDE=STATISTICS
• インポートにおけるEXCLUDE=INDEXES。索引定義を得るためにSQLFILE パラメータを使用, データのインポート後、パラレルで作成
65
Copyright© 2012, Oracle . All rights reserved.
.
エクスポート/インポート: Data Pump ネットワーク・ モード
$ impdp FULL=Y
$ impdp USER=abd
$ impdp ...
$ expdp ...
Database Link(s)
• データベース・リンク上でソースからターゲットへダイレクトインポート
• パラメータ: NETWORK_LINK
• ターゲット・システム上でimpdp のみ実行 - expdp は不要
• ダンプ・ファイルは不要: ディスクI/Oなし, ファイル転送不要
• DBリンクの制限事項
• LONG/LONG RAW とネストした表のオブジェクト型は
動作しない
$ impdp system/pw NETWORK_LINK=mydblink FULL=Y
66
Copyright© 2012, Oracle . All rights reserved.
.
アジェンダ
パフォーマンス管理
結論
導入 & 概要
一般的な準備のステップ
フォールバック・ストラテジ
アップグレード & 移行ケース
Exadataへのクロス
プラットフォームTTS
RACへのアップグレード
+ASM
ゼロ・ダウンタイム?
Unicodeへの変更
エンディアン移行
67
Copyright© 2012, Oracle . All rights reserved.
.
ケース 3 – クロスプラットフォームTTS Facts & Description
1. Oracle 10.2 on IBM AIX からOracle 11.2 on OEL5 (Exadata) への移行
2. ハードウェアとOSエンディアンの移行
3. データベース・サイズ: 70TB
4. 最大許容ダウンタイム: 48 時間
Oracle 10.2.0.4 IBM AIX 5L
»»ビッグ・エンディアン««
Oracle 11.2.0.2
OEL5.3 64bit »»リトル・エンディアン««
68
Copyright© 2012, Oracle . All rights reserved.
.
トランスポータブル表領域のコンセプト
全ての表領域をターゲット・プラットフォーム
上の新しいデータベースへプラグイン
Oracle 10.2.0.4 IBM AIX 5L
»»ビッグ・エンディアン««
Oracle 11.2.0.2
OEL5.3 64bit »»リトル・エンディアン««
69
Copyright© 2012, Oracle . All rights reserved.
.
レイアウトとプロジェクト・プラン 移行元 移行先
表領域をread only に設定 空データベース構築
メタデータをエクスポート
データファイルのバックアップ RMAN でパラレルにファイル変換
ASM にデータファイルをリストア
メタデータをインポート
表領域をread write に設定
Oracle 10.2.0.4 IBM AIX 5L
»»ビッグ・エンディアン««
Oracle 11.2.0.2
OEL5.3 64bit »»リトル・エンディアン««
70
Copyright© 2012, Oracle . All rights reserved.
.
トランスポータブル表領域
• 基本コンセプト:
• 新しい環境に“空” データベースを作成
• ソースからターゲット・データベースへ全てのデータ表領域を
プラグイン
• Oracle Database 10g より、異機種間、クロス・エンディアンで動作
• パフォーマンス・ポテンシャル
• “場合により” 非常に高速なアップグレード
• 物理ファイル・コピーはデータのエクスポート/インポートより、ずっと速くなることがある
• 複雑性は制約になる恐れがある
• SYSTEM+SYSAUX 表領域は移動できない
• ビュー、シノニムなどを移動するための追加ステップが必要
71
Copyright© 2012, Oracle . All rights reserved.
.
トランスポータブル表領域
• 一般的なTTS のコンセプト
• Oracle 8i より利用可能
データファイルをコピー
exp メタデータ
imp メタデータ
自己完結しているか?
=> 読取り専用
読取り/書込み
ターゲットDB ソースDB
72
Copyright© 2012, Oracle . All rights reserved.
.
トランスポータブル表領域
• 異機種間のTTS (v$transportable_platform):
FILE
COPY
FILE
COPY
Big Endian Little Endian RMAN
c
o
n
v
e
r
t
HP Open VMS HP Tru64 UNIX Linux IA (32-bit) Linux IA (64-bit) Linux 64-bit for AMD Microsoft Windows IA (64-bit) Microsoft Windows 64-bit for AMD Microsoft Windows IA (32-bit)
Solaris Operating System (x86)
Apple Mac OS
HP-UX (64-bit) HP-UX IA (64-bit)
AIX-Based Systems (64-bit)
IBM zSeries Based Linux IBM Power Based Linux
Solaris[tm] OE (32-bit) Solaris[tm] OE (64-bit)
73
Copyright© 2012, Oracle . All rights reserved.
.
トランスポータブル表領域
• 異機種間のTTS
• RMAN がファイルコピーを実行
• ソースもしくはターゲット・システム上で実施可能
• より高速なストレージを使用
• バックアップとおおよそ同じ時間がかかる
• 例:
RMAN> CONVERT TABLESPACE users,example
TO PLATFORM 'Linux IA (32-bit)'
FORMAT='/tmp/transport_linux/%U';
74
Copyright© 2012, Oracle . All rights reserved.
.
ターゲットDB
新規作成
トランスポータブル表領域
ソースDB
非セグメント・ユーザー・ オブジェクトを移動
10.2.0.4 11.2.0.3
移動
75
Copyright© 2012, Oracle . All rights reserved.
.
アジェンダ
パフォーマンス管理
結論
導入 & 概要
一般的な準備のステップ
フォールバック・ストラテジ
アップグレード & 移行ケース
ゼロ・ダウンタイム?
RACへのアップグレード
+ASM
Exadataへのクロス
プラットフォームTTS
Unicodeへの変更
エンディアン移行
76
Copyright© 2012, Oracle . All rights reserved.
.
ケース4 – ゼロ・ダウンタイム
Oracle 10.2.0.3 HP Itanium
Oracle 11.2.0.2 OEL5– 64bit
Facts & Description
1. ハードウェアとOSの変更
2. Oracle 10.2 からOracle 11.2 へアップグレード
3. 最大許容ダウンタイム: ゼロに近い
4. データベースサイズは10TB
5. Redoログの生成量: 1MB redo/sec ==> 85GB redo/day
77
Copyright© 2012, Oracle . All rights reserved.
.
レイアウトとプロジェクト・プラン
Oracle 10.2.0.3 HP Itanium
Oracle 11.2.0.2 OEL5– 64bit
移行元 移行先
1. キャプチャ開始のセットアップ 1. 空のデータベースを構築
2. データベースの全体または一部分をエクスポート
2. ログ適用のセットアップ
3. 移行先にダンプファイルを移動
4. 全てのexportダンプファイルをインポート
5. ログ適用の開始
6.データ同期後アプリケーションを停止 6. データ同期後アプリケーションを開始
78
Copyright© 2012, Oracle . All rights reserved.
.
Oracle GoldenGate
• データベースのオプション製品
• Active Data Guardも含む移行可能なライセンス
• 以下のOracle databaseバージョンに対応
• GoldenGate 10.4: 9i, 10.1, 10.2, 11.1
• GoldenGate 11g: 9.2.0.7, 10.1+, 10.2.0.4+, 11.1+, 11.2+
• Oracle Streamsよりも高速
• Oracle Streamsよりもセットアップが簡単で使いやすい
• フォールバックも同様
• Oracle Streamsよりデータ型の制限が少ない
• マニュアルOracle GoldenGate Installation and Setup Guide
• GoldenGate OTN page: http://www.oracle.com/technetwork/middleware/goldengate/overview/index.html
79
Copyright© 2012, Oracle . All rights reserved.
.
一般的な移行方法 vs. GG
データ移行/
DBアップグレード
のタスク
データの整合性 確認
データの整合性 確認
新しい環境のスタート
初期データの移行/
DBアップグレードのタスク
一般的なマイグレーション GoldenGate 11gを使用
差分データ移行の設定
経過時間
移行作業に先立って
行うことができる
80
Copyright© 2012, Oracle . All rights reserved.
.
Capture: トランザクションログを参照することで、コミットされたトランザクションをキャプチャする。 (フィルタリングも可能)
Oracle GoldenGateの動作
Capture
Oracle 10.2
HP-UX
81
Copyright© 2012, Oracle . All rights reserved.
.
Oracle GoldenGateの動作
Trailファイル: 転送するデータのキューと格納
Trailファイル
Oracle 10.2
HP-UX
82
Capture
Copyright© 2012, Oracle . All rights reserved.
.
Oracle GoldenGateの動作
Capture Trailファイル
Oracle 10.2
HP-UX
移行先のデータベース構築:
- トランスポータブル表領域で異なるプラットフォームに移行
- DataPumpでExport/Import
Oracle 11.2
Exadata
X2-2
83
Copyright© 2012, Oracle . All rights reserved.
.
Oracle GoldenGateの動作
Capture
Trailファイル
Oracle 10.2
HP-UX
Pump: 移行先にデータを配信
Oracle 11.2
Exadata
X2-2
Pump
84
Copyright© 2012, Oracle . All rights reserved.
.
Oracle GoldenGateの動作
Capture Trailファイル
Oracle 10.2
HP-UX
Route: データは圧縮、暗号化されて移行先へ配信
Oracle 11.2
Exadata
X2-2
Pump Trailファイル
85
Copyright© 2012, Oracle . All rights reserved.
.
Oracle GoldenGateの動作
Capture
Trailファイル
Oracle 10.2
HP-UX
Oracle 11.2
Exadata
X2-2
Pump Trailファイル Delivery
Delivery: トランザクションの一貫性を維持しながらデータを適用、必要に応じてデータ変換して適用可能
86
Copyright© 2012, Oracle . All rights reserved.
.
Oracle GoldenGateの動作
Capture
Trailファイル
Oracle 10.2
HP-UX
Golden Gateは双方向でも動作
新しいバージョンから 古いバージョンも可能
Oracle 11.2
Exadata
X2-2
Pump Trailファイル
Delivery
双方向
87
Copyright© 2012, Oracle . All rights reserved.
.
ケース4の整理 結論とまとめ
1. 移行先の新サーバにOracle Databaseをインストールして最新のパッチを適用
2. 移行元と移行先の両サーバーにOracle GoldenGateをセットアップ
3. データをエクスポート/インポートし、移行元のサーバーでCaptureプロセスを開始
4. データのインポートが完了したら、適用を開始
5. データ同期後にアプリケーション/クライアントの接続先を変更
6. 移行失敗に備えたフォールバックのためにcapture/applyを逆方向へ切り替える
Oracle 10.2.0.3 HP Itanium
Oracle 11.2.0.2 OEL5– 64bit
88
Copyright© 2012, Oracle . All rights reserved.
.
アジェンダ
パフォーマンス管理
結論
導入 & 概要
一般的な準備のステップ
フォールバック・ストラテジ
アップグレード & 移行ケース
Unicodeへの変更
RACへのアップグレード
+ASM
Exadataへのクロス
プラットフォームTTS
ゼロ・ダウンタイム?
エンディアン移行
89
Copyright© 2012, Oracle . All rights reserved.
.
ケース5 – キャラクタ・セットの変更 Facts & Description
1. ハードウェアやOSの移行ではない
2. データベースのキャラクタ・セットをUnicodeに変更する
3. 最大許容ダウンタイム: 48時間
4. データベースサイズは1TB
Oracle 10.2.0.5 OEL5 – 64bit
Oracle 11.2.0.2 OEL5– 64bit
90
Copyright© 2012, Oracle . All rights reserved.
.
レイアウトとプロジェクトプラン
Oracle 10.2.0.5 OEL5 – 64bit
Oracle 11.2.0.2 OEL5– 64bit
移行元 移行先
1s. Csscanの設定 1d. データベースをAL32UTF8のキャラクタセットで作成
2s. DB上でCsscanの検討 2d. NLS_LENGTH_SEMANTICS=CHARを定義
3s. 列とデータ型の調整
4s. 問題点の解決
5s. アプリケーションユーザのエクスポート
6. アプリケーションユーザのインポート
91
Copyright© 2012, Oracle . All rights reserved.
.
なぜCSScan(Characterset Scan)が必要?
• UTF8 と AL32UTF8 は Unicodeキャラク・タセット
• UTF8 はUnicode 3.0 (Oracle 8.1.7!!)
• 8iクライアントとの互換性の必要かがなくなり次第、 AL32UTF8を選択
• AL32UTF8 は定期的にアップデートしている
• エクポート/インポートの実行時:
• いくつかのデータは変換することができないかもしれない
• いくつかのデータは現在定義している列長の範囲を超えるかもしれない
• いくつかのデータは最大の列長の範囲を超えるかもしれない
• CHARは2000 BYTES、VARCHAR2は4000 BYTES
• データ移行作業に必要なアクション
• 列のセマンティックスをBYTEからCHARに変更
• 最大の列長を超えている列をCLOBに変更
• 変換する前にデータを変更する
92
Copyright© 2012, Oracle . All rights reserved.
.
Csscanを実行
Csscanの結果を評価
列のセマンティックを調整
expdp impdp
完了!!!
Csscanを構成
キャラクタ・セット変更のワークフロー
93
Copyright© 2012, Oracle . All rights reserved.
.
Database Migration Assistant for Unicode
• 新しいツール: DB Migration Assistant
• OTN Home Page for DMUから確認: http://www.oracle.com/technetwork/database/globalization/dmu/overview/index.html
• Note:1272374.1: The DMU Tool
94
Copyright© 2012, Oracle . All rights reserved.
.
アジェンダ
パフォーマンス管理
結論
導入 & 概要
一般的な準備のステップ
アップグレード&移行ケース
フォールバック・ストラテジ アップグレード中の問題
アップグレード後の問題
95
Copyright© 2012, Oracle . All rights reserved.
.
フォールバック・ストラテジ – アップグレード中の問題
RMANで完全なオンラインバックアップを取得
No Yes
COMPATIBLE パラメータを変更する?
すべてのデータ表領域を
READ ONLYに設定し、
SYSTEM,SYSAUX、UNDO、
一時表領域、redoログ、制御ファイルのオフラインバックアップを取得
≥ 10.2
フラッシュバック・データベース
の保証付きリストアポイント
を作成
オンラインバックアップの
リストア・リカバリ 保証付きリストア
・ポイントへ
フラッシュバック
シャットダウンし、オフラインバックアップファイルをリストアし、
移行元の環境で起動
Yes
96
Copyright© 2012, Oracle . All rights reserved.
.
フォールバック・ストラテジ オンラインバックアップ
• バックアップのリストア
• 完全なオンラインバックアップ (RMAN)
• 次の点を確認:
• バックアップを保存する場所は?テープ?HDD?オフサイト...
• リストアは正常に機能するか?
• どれくらい時間がかかるか? • 特に仮想テープドライブのリストアジョブの優先順位を確認
• リカバリにどれくらい時間がかかるか?
97
Copyright© 2012, Oracle . All rights reserved.
.
フォールバック・ストラテジ オフラインバックアップ
• 完全なバックアップをとる必要がない場合 • すべてのデータ表領域を読取り専用モードにする
• Immediateモードでデータベースをシャットダウンする
• SYSTEM、TEMP、UNDOのデータ・ファイルおよびSYSAUXと、 制御ファイル/REDOログをコピーする
• データベースを再起動する
• アップグレード中に何らかの処理が失敗したら:
• データベースをシャットダウンする
• バックアップ先の場所から、SYSTEM、TEMP、UNDO、SYSAUX、制御ファイル、およびREDOログをコピーする
• 移行元の環境でデータベースを起動する
• 利点:
• 簡単かつ高速
• COMPATIBLEを変更可能
98
Copyright© 2012, Oracle . All rights reserved.
.
フォールバック・ストラテジ フラッシュバック – 保証リストア・ポイント
• フラッシュバック・データベース • 通常、リストア・リカバリよりもかなり高速に処理できるソリューション
• COMPATIBLEは変更しない
• アップグレード中に何か問題起きた時に有効なソリューション
• 10.2から使用可能
• 保証付きリストア・ポイントの作成
• データベースのアップグレード
• もし失敗した場合、リストア・ポイントにフラッシュバック
• 成功した場合、忘れずにリストア・ポイントを削除する
SQL> CREATE RESTORE POINT grpt
GUARANTEE FLASHBACK DATABASE;
SQL> FLASHBACK DATABASE TO RESTORE POINT grpt;
SQL> SELECT * FROM V$RESTORE_POINT;
SQL> DROP RESTORE POINT grpt;
99
Copyright© 2012, Oracle . All rights reserved.
.
アジェンダ
パフォーマンス管理
結論
導入 & 概要
一般的な準備のステップ
アップグレード&移行ケース
フォールバック・ストラテジ
アップグレード後の問題
アップグレード中の問題
100
Copyright© 2012, Oracle . All rights reserved.
.
• 前提:データ損失が許されない
フォールバック・ストラテジ– アップグレード後の問題
アップグレード後にRMANを使用して再度完全なオンラインバックアップを取る
No Yes
COMPATIBLEパラメータを変更する?
≥ 10.1
catdwgrd.sqlを使用して
ダウングレードし、
catrelod.sqlを使用し
移行元のリリースへ戻す
移行元のexpを使用して
エクスポートし、
移行元のimpを使用して
空のデータベースへ
インポートする
Yes
移行元のリリースへ
変更データを取得/適用
するために
Oracle Streamもしくは
Oracle GoldenGateを使用
101
Copyright© 2012, Oracle . All rights reserved.
.
フォールバック・ストラテジ- exp/imp
• exp/imp による9.2.0.xへのダウングレード
• Note:158845.1
• アップグレード前の状態に戻さなければならなくなった場合、インポート用に空のデータベースを作成する
• 次に:
• 適切な$ORACLE_HOME/rdbms/admin/catexp.sql を実行し、アップグレード後のデータベース内に9.2のエクスポートビューを作成する
• エクスポートに9.2(移行元)の exp を使用
• インポートに9.2(移行元)の imp を使用
• 11g以降のデータベースに9.2クライアントを使用してエクスポートする時はこちらを参照: Note:550740.1 Export from 11g using EXP Utility Version 9iR2 produces corrupt export dump • CREATE OR REPLACE VIEW exu9defpswitches (
compflgs, nlslensem ) AS
SELECT a.value, b.value
FROM sys.v$parameter a, sys.v$parameter b
WHERE a.name = 'plsql_code_type' AND
b.name = 'nls_length_semantics'
/
102
Copyright© 2012, Oracle . All rights reserved.
.
フラッシュバック・ストラテジ– Golden Gate
• Oracle Golden Gateを使用してダウングレード • Oracle Streams とコンセプトは似ている
移行元
アップグレード
先データベース
1
2
“ダウングレード”
103
Copyright© 2012, Oracle . All rights reserved.
.
フォールバック・ストラテジ- catdwgrd.sql
• catdwgrd.sglを使用してダウングレード
• Note:443890.1
• アップグレード元リリースへのダウングレード
• 10.1.0.5
• 10.2.0.2/3/4/5
• 11.1.0.6/7
• COMPATIBLE 設定が上げられていない場合にのみ実行可能!!! • 注意:
ダウングレードでは、アップグレード前のリリースに戻すことのみ可能。そのため、
パッチ・セットを適用する場合は、常にアップグレードの開始前に適用する必要がある。そうしないと、パッチ適用後のリリースにしかダウングレードできなくなる。
104
Copyright© 2012, Oracle . All rights reserved.
.
フォールバック・ストラテジ- catdwgrd.sql
• catdwgrd.sql による10gへのダウングレード
• 11g 環境でのタスク:
• アップグレード前の10g環境でのタスク:
• 参照: データベースにEMリポジトリが存在する場合、追加のステップが必要となります。
- Oracle 11g アップグレード・ガイドの6章 データベースのダウングレード を参照して ください。
SQL> SPOOL /tmp/downgrade.log
SQL> STARTUP DOWNGRADE
SQL> @catdwgrd.sql
SQL> SPOOL OFF
SQL> STARTUP UPGRADE
SQL> SPOOL /tmp/reload.log
SQL> @catrelod.sql -- The catrelod.sql script reloads the appropriate version of
-- all of the database components in the downgraded database.
SQL> SPOOL OFF
105
Copyright© 2012, Oracle . All rights reserved.
.
106
ワークフロー
アジェンダ
フォールバック・ストラテジ
結論
導入 & 概要
一般的な準備のステップ
アップグレード & 移行ケース
パフォーマンス管理
実行計画の安定性を確保
パフォーマンスを最適化
パフォーマンス・テスト
機能を有効化
11.2DBの用意
Copyright© 2012, Oracle . All rights reserved.
.
アップグレード後に行うポイント
107
• 固定表の統計情報を取得
• アップグレード直後に取得
• ワークロードが変わるごとに再取得
• システム統計情報を取得
• 通常運用開始直後に取得
• コストベース・オプティマイザによる不適切な値の使用を防止
SQL> EXECUTE DBMS_STATS.GATHER_FIXED_OBJECTS_STATS;
SQL> EXECUTE DBMS_STATS.GATHER_SYSTEM_STATS('START');
...
SQL> EXECUTE DBMS_STATS.GATHER_SYSTEM_STATS('STOP');
Copyright© 2012, Oracle . All rights reserved.
.
アジェンダ
フォールバック・ストラテジ
パフォーマンス管理
導入 & 概要
一般的な準備のステップ
アップグレード & 移行ケース
結論
108
Copyright© 2012, Oracle . All rights reserved.
.
アップグレードにまつわる課題
109
• アップグレードに伴うシステム・ダウンタイム (可用性) • ビジネス要件に合った、アップグレード方法を選択する必要
• 停止によるビジネスインパクトに比例した、計画・テストの実施
• 切戻し方法の準備とテスト
• アップグレードに伴うパフォーマンスの問題 (性能) • アップグレード時の問題と呼ばれているものの 90% 以上は、
実はアップグレード自体の問題ではなく、アップグレード後の性能問題
• 事前テストのシナリオ/方法を万全なものにすることが重要
Copyright© 2012, Oracle . All rights reserved.
.
まとめ
110
• アップグレードに伴うシステム・ダウンタイム (可用性)
• アップグレードに伴うパフォーマンス問題 (性能)
事前に既知の問題や変更点・ベストプラクティス等の情報を収集し、要件に適したアップグレード方法とテストシナリオを準備する
アップグレード前に十分なテストを実施し、問題が発生した時のために切り戻しも策定しておく。GoldenGateを使用して、ダウンタイム極小化と切り戻しを実現
Oracle Real Application Testing で本番ワークロードを利用
したリアルな負荷試験 (Database Replay) を実施したり、個別
SQL の実行計画や性能劣化を事前検証 (SPA) することが可能
性能劣化した SQL は、自動チューニングを実施 (Diag/Tuning) したり、旧環境の実行計画を流用/管理 (SPM) することで
性能改善を行うことが可能
Copyright© 2012, Oracle . All rights reserved.
.
Copyright© 2012, Oracle . All rights reserved.
. 112
Screen Only
Copyright © Oracle Corporation Japan, 2009. All rights reserved. Copyright Oracle Corporation Japan, 2009. All rights reserved.
Copyright Oracle Corporation Japan, 2009. All rights reserved.