• 検索結果がありません。

Microsoft PowerPoint - 10gへの移行.ppt

N/A
N/A
Protected

Academic year: 2021

シェア "Microsoft PowerPoint - 10gへの移行.ppt"

Copied!
95
0
0

読み込み中.... (全文を見る)

全文

(1)
(2)

はじめに

y

当資料では、Oracle8、Oracle8i から Oracle10g

へのアップグレード作業手順を具体的に解説し

ています。

y

y

実際のアップグレードを行う際は、マニュアルを

実際のアップグレードを行う際は、マニュアルを

必ず参照してください。

必ず参照してください。

– –

Oracle

Oracle

データベース アップグレード・ガイド

データベース アップグレード・ガイド

10

10

g

g

リリース

リリース

1(10.1)

1(10.1)

y

y

オラクル・サポート・サービスの契約は必須です。

オラクル・サポート・サービスの契約は必須です。

(3)

AGENDA

1.

基本知識と用語

2.

アップグレードに必要な準備

3.

アップグレード作業手順

y

DBUA

- DBUAの使用によるアップグレード

- アップグレード後の処理

y

Export/Import

- Export/Import の使用手順

- 表領域移行(TTS) の使用手順

4.

アプリケーションのアップグレード

(4)

バージョンとリリースの番号

y

Oracleプラットフォーム製品の番号ルール

10

10

.

.

1

1

.

.

0

0

.

.

3

3

.

.

0

0

バージョン番号 データベースのメンテナンス・ リリース番号 アプリケーション・サーバーのリリース番号 コンポーネント固有のリリース番号 プラットフォーム固有 のパッチ・セット番号

y

3桁目までは製品バージョン

y

4桁目以降はパッチ・バージョン

(5)

Oracle8i

Oracle9i

Oracle8

“移行”と“アップグレード”の違い

y

Oracle7 とOracle8以降のバージョンでは、内部アーキテ

クチャが大きく異なります。

Oracle7

移行

アップグレード

Oracle10g

(6)

“移行”と“アップグレード”の違い

y

Oracle7 をOracle10gにするためには、

移行処理

が必要です。

y

Oracle8/Oracle8i/Oracle9i のOracle10gへのア

ップグレードには、移行処理が必要ありません。

スクリプトを実行するだけ

のアップグレード処理です。

y ダウングレード – 以前のバージョン、リリースへ変換する処理 – 例)Oracle9i 9.2.0 を Oracle9i 9.0.1 へ“ダウングレード”する

(7)

AGENDA

1.

基本知識と用語

2.

アップグレードに必要な準備

3.

アップグレード作業手順

y

DBUA

- DBUAの使用によるアップグレード

- アップグレード後の処理

y

Export/Import

- Export/Import の使用手順

- 表領域移行(TTS) の使用手順

4.

アプリケーションのアップグレード

(8)

アップグレードに必要な準備

A)

Oracle Database 10g

の新機能の理解

B)

10g

へのアップグレード・パスの決定

C)

アップグレード方法の選択

D)

新しいOracle ホーム・ディレクトリの選択

E)

バックアップ計画の準備

F)

テスト計画の作成

事前準備一覧

(9)

Oracle 10g 新機能の理解

y

最初に10gの新機能を理解する必要があります。

参照するマニュアル:

y「 OracleDatabase新機能 10g リリ

ース1(10.1)」(B12471-01)

各コンポーネントについては、それぞれ固有のドキュメントの中に

バージョンによる差分が記述されています。

y

10gの新機能を正しく理解し、ニーズに応えられるアプリケ

ーション構築を行って下さい。

(10)

システム要件の確認とリソースの見積

y

以下の項目について、確認を行います

OSとハードウェアの両方の構成要件

既存の本番データベースのサイズ

Oracle10g に関連するファイルに対して、割り当てるこ

とのできるディスクの空きサイズ

(11)

Oracle Database 10g システム要件

Solaris SPARC (64-bit) HP- UX PA- RISC (64-bit) Solaris8

Solaris9 HP-UX 11i(11.11)

ソ フ ト ウェア 1.5GB 2.5GB

デ ー タベー ス 1.2GB 1.2GB

512MB以上 512MB以上

AIX-BASED 5L Windows (32-bit) AIX 5L(5.2) ML1 以上

AIX5L (5.3)

Windows NT 4.0 SP6a以上 Windows 2000 SP1以上

Windows XP Professional (32-bit) Windows Server 2003

Windows Small Business Server 2003

ソ フ ト ウェア 3GB 100MB デ ー タベー ス 1.2GB 1.5GB 512MB以上 256MB以上 対応OS デ ィスク メ モ リー デ ィスク 対応OS メ モ リー

(12)

Oracle Database 10g デフォルト・ポート

y

Oracle Database 10gで使用される各コンポーネントの必要なポート

一覧とデフォルトのポート範囲は以下のとおりです。

※ポートは変更することができます。

コンポーネント ポート用途 ポート範囲 Enterprise Manager Agent HTTP 1830 - 1849

HTTP 5500 - 5519 RMI 5520 - 5539 JMS 5540 - 5559 HTTP 5560 - 5579 RMI 5580 - 5599 JMS 5600 - 5619 HTTP 5620 - 5639 RMI 5640 - 5659 JMS 5660 - 5679 Enterprise Manager Database Control

iSQL*Plus Ultra Search

(13)

アップグレード手順の概要

元データベース環境の記録

元データベース環境の記録

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

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

( (OSOSのアップグレードのアップグレード))

10

10

g

g

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

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

運用再開

運用再開

DBUA

DBUA

Export / ImportExport / Import

Unload&Load

(14)

アップグレード方法の選択

y

データベース全体のアップグレード

Database Upgrade Assistant(DBUA)

アップグレード・ユーティリティ

y

データの移行 (中間ファイルを生成)

エクスポート & インポート

表領域移行(TTS)

アップロード& アンロード

y

データの移行 (中間ファイルなし)

データ・コピー

(15)

データベース全体のアップグレード

y

Database Upgrade Assistant (DBUA)

– GUI画面を使用し、ウィザードに従ったアップグレード – 内部的にアップグレード・ユーティリティを使用。各処理のログはすべて 残る – 手順ミスの可能性が少なく安全 – オラクル推奨の方法

y

アップグレード・ユーティリティ

– コマンドラインからアップグレード・ユーティリティ(SQLスクリプト及びユ ーティリティ)を使用してのアップグレード

(16)

データの移行(中間ファイルあり)

y

Export/Import

– Export/Importユーティリティを使用 – スキーマ定義、権限を含めて、データを移動

y

Transportable TableSpace(TTS)

– 表領域のメタデータのExport/Importと、表領域を構成するファイルの COPYにより、データを別のOracleに移動。上位バージョンへのみ可能。 y 表領域をExportする機能を持つのは、8i以降のEnterprise Editionのみ

y

Unload&Load

– Select文にてデータをCSVファイルなどに出力。 – 出力ファイルを、SQL*Loader or カスタム・プログラムにてInsert

『ファイル』

(17)

データの移行(中間ファイルなし)

y

データ・コピー

– データベースリンク経由でのデータコピー。SQLを変更することにより、 表定義の変更やデータのクレンジングが可能

y Create Table ASコマンド、Insert Selectコマンド y SQL*PLUSのCOPYコマンド

Database Link

Database Link

(18)

各移行方法の長所と短所

・Unloadファイルのための大容量ディスクが必要 ・容量に比例して時間がかかる。 ・断片化を解消可能。 ・異なる H/W、OS への移行が可能 Unload &Load ・容量に比例して時間がかかる。 ・ネットワーク経由の処理 ・操作中は両方のデータベースが同時に使用可能である必 要がある。 ・断片化を解消可能。 ・異なる H/W、OS への移行が可能 データコピー ・データファイルのための大容量ディスクが必要 ・容量に比例して時間がかかる。 ・上位Versionへの移行のみ可能 ・移行元のOracleは8i以上であることが必要 ・メタデータ以外は、ファイルのCOPYでよいため高速 ・異なる H/W、OS への移行が可能(RMANが必要) TTS ・ダンプファイルのための大容量ディスクが必要 ・容量に比例して時間がかかる。 ・Oracle のバージョンに依存しない移行。 ・断片化を解消可能。 ・異なる H/W、OS への移行が可能 Exp / Imp ・DB 全体のみの移行。 ・アップグレード可能なバージョンが限定される。 ・DB サイズに関係なく比較的高速。 ・移行に必要なディスク領域は少量。 アップグレード ユーティリティ ・DB 全体のみの移行。 ・アップグレード可能なバージョンが限定される。 ・GUI ベースで簡単に処理を実行可能。 ・DB サイズに関係なく比較的高速。 ・移行に必要なディスク領域は少量。

DBUA

DBUA

( (推奨推奨)) 短所 長所

(19)

移行方法一覧

表 表 表領域 DB/ ユーザ ー /表 DB DB 移行の 対象 ・データCOPY(読み取り一貫性によりTXを止める必要はな いが、データの整合性を保つ仕組みがない場合は、サービ スを停止することとなる。) ・索引の作成 ・データのUnload ・ファイルの移動 ・データのLoad ・索引の作成 ・表の統計情報解析 ・表領域の読み取り専用化&COPY ・メタデータのExport ・ファイルの移動 (・必要な場合にはRMANによるファイルの変換) ・メタデータのImport ・表領域の書き込み可能化 ・データExport(読み取り一貫性によりTXを止める必要はな いが、データの整合性を保つ仕組みがない場合は、サービ スを停止することとなる。) ・ファイルの移動 ・データImport(Import時に統計情報収集も可能) ・バックアップ作成(Onlineでも可能ですが、時間的なリスクを 考えるとCold BackupがBetter) ・アップグレード ・バックアップ作成(Onlineでも可能ですが、時間的なリスクを 考えるとCold BackupがBetter) ・アップグレード システム停止時間 ・データベース・リンク経由 ・ネットワーク環境の影響あり。 途中で処理が失敗した場合の 対処に注意 ・移動の際に、表構成やデータ の変更が可能 ・断片化の解消が可能 ・文字コード変換が可能 高速。(メタデータのみExp/Imp)。 ・大容量の場合にはダンプファ イルの分割も可能。 ・断片化の解消が可能 ・文字コード変換が可能 ・データ・ファイル・ヘッダーの みを変更します。 ・GUI ・パラメータ等のチェック機能が あります。 ・データ・ファイル・ヘッダーの みを変更します。 その他 ○ ○ × ○ × × 表の再 編成 必要なし 必要なし 必要なし 必要なし 必要 必要 バックアップ の必要性 ○ 必要 Unload& Load ○ なし データ・ コピー ○ (10gより RMANを 利用して 可能。EE のみ) 必要 (メタデータ Exp file) TTS ○ 必要 exp/ imp × なし アップグ レード・ ユーティ リティ × なし DBUA 他OSへ の移行 中間ファイ ルの作成

(20)

新しいORACLE_HOMEの選択

y

Oracle 10gソフトウェアのインストールのために、新しい

独立したORACLE_HOMEを作成します

– 既存のバージョンのORACLE_HOMEにはインストールできません – 既存のORACLE_HOMEは、新しいORACLE_HOMEを作成した後でも 残しておくことができます ORACLE_BASE 既存 ORACLE_HOME 10 10gg用用 ORACLE_HOMEORACLE_HOME データファイルHOME

CREATE!

CREATE!

(21)

バックアップ/テスト計画の作成

y

バックアップ計画立案の際の考慮点

本番データベースの実行不可能状態の時間的な許容範囲

可用性要件を満たすためのバックアップ計画

過去のアーカイブ・セットをいくつまで保持するか

バックアップのリストア所要時間

リカバリ手順の十分なテスト

(22)

バックアップ/テスト計画の作成

y

アップグレードに必要な一連のテスト

1.

データベース・アップグレード・テスト

– テスト・データベース同士により試行する 2.

最小テスト

– アプリケーションの一部のみを移植して試行する 3.

新機能テスト

– 新機能と既存機能の動作確認 4.

統合テスト

– ネットワークを含めたテスト(SQL*Net と Net8 等) 5.

パフォーマンス・テスト

6.

ボリューム/ロード・ストレス・テスト

– 様々なボリューム・ロードでシミュレート

(23)

アップグレード手順の概要

元データベース環境の記録

元データベース環境の記録

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

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

( (OSOSのアップグレードのアップグレード))

10

10

g

g

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

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

運用再開

運用再開

DBUA

DBUA

Export / ImportExport / Import

Unload&Load

(24)

データベース環境の記録

y

「データベース環境の記録」を取得する目的は、ファイル

位置、初期化パラメータ等、バックアップやアップグレード

の対象や、そこに必要な情報を把握することにあります。

y

情報収集には、OTNからダウンロードできる「データベー

ス管理ツール」を使用できます。

– データベース管理ツールは、Unix(Linux)でのDBA作業をメインとした方 が効率良く作業できることを目的として作成されたShellスクリプトおよび SQLスクリプトです。 – サポートのないフリーツールです – DBA用のディクショナリやチューニング等で検索する情報を画面やログ として確認できます。 – OTNへのアクセスには事前登録(無料)が必要です。

(25)

参考:OTNからのDB管理ツールの取得

http://

http://

otn

otn

.oracle.co.

.oracle.co.

jp

jp

/sample_code/tech/

/sample_code/tech/

dba

dba

/index.html

/index.html

(26)

データベース環境の記録

データベース管理ツールコマンド一覧

ora : 現在設定されている,ORACLEに関係する環境変数の表示。 sid : 現在の ACTIVEデータベース(SID)&Listenerの表示。

alive : 現在接続している DBの SESSION(USERのみ)情報の表示。 sp : INIT.ORAの情報の提示。(“SQL> show parameter“と同じ) dbo (p) : データベースオブジェクトのディクショナリ。

plan (m) : SQL文のPATH表示 (Explain Plan)。 tkp [l/a] : トレースファイルの情報 (tkprof)。

(27)

管理ツールコマンド“dbo” 使用イメージ

Show Database Configration

(*) shows many Query Pattern. [ 1: Database Information ] [ 2: Control File Information ] [ 3: Redo log File Information ] [ 4: Database File Information ] [ 5: Tablespace Information ] [ 6: Rollback Segment Information ] [ 7: User Information ]

[ 8: Object Information (*)] [ 9: Extent Information (*)] [10: Table Information (*)] [ q: Exit ]

(28)

データベース環境の記録

y

取得すべきデータベース情報

データベース・ファイル

制御ファイル

REDOログファイル

移行対象スキーマ

移行対象オブジェクト

初期化パラメータ

(INITファイルのコピー) –

tnsnames.ora、listener.ora

(29)

AGENDA

1.

基本知識と用語

2.

アップグレードに必要な準備

3.

アップグレード作業手順

y

DBUA

- DBUAの使用によるアップグレード

- アップグレード後の処理

y

Export/Import

- Export/Import の使用手順

- 表領域移行(TTS) の使用手順

4.

アプリケーションのアップグレード

(30)

アップグレード手順の概要

元データベース環境の記録

元データベース環境の記録

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

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

( (OSOSのアップグレードのアップグレード))

10

10

g

g

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

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

運用再開

運用再開

DBUA

DBUA

Export / ImportExport / Import

Unload&Load

(31)

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

y

方法その1:コールド・バックアップの取得

移行の途中で何があっても復旧できるように、事前に

バックアップを必ず取得します。

y コールド・バックアップを推奨

DBUAを使用する場合、ウィザードからRMANによる

事前バックアップが可能ですが、可能であれば別途

OSコマンド(tar等) により、$ORACLE_HOME以下

の全ファイル、および全データベース・ファイルの取得

することをお勧めします。

(32)

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

y

方法その2:Full Export

全体エクスポートによるバックアップの取得方法

Export/Importによる移行の際には、この時点で取得したダンプフ

ァイルを使用できます。

テープデバイスへの直接のExportは避けてください。

% exp system/<

パスワード

>  full=Y file=<

ダンプファイル名

> log=<

LOGファイル名

>

例:$ exp system/manager file=all806.dup log=all806.log full=Y

(33)

AGENDA

1.

基本知識と用語

2.

アップグレードに必要な準備

3.

アップグレード作業手順

y

DBUA

- DBUAの使用によるアップグレード

- アップグレード後の処理

y

Export/Import

- Export/Import の使用手順

- 表領域移行(TTS) の使用手順

4.

アプリケーションのアップグレード

(34)

アップグレード手順の概要

元データベース環境の記録

元データベース環境の記録

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

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

( (OSOSのアップグレードのアップグレード))

10

10

g

g

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

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

運用再開

運用再開

DBUA

DBUA

Export / ImportExport / Import

Unload&Load

(35)

DBUA の内部処理

ターミナル・リリースへの アップグレード OS/Databaseの要件チェック 元データベースの起動 DBUAによるアップグレード処理 ログファイル確認 後処理

(36)

DBUAを使用したアップグレード・パス

R7.3.3

R7.3.3

R7.3.4

R7.3.4

R8.0.3

R8.0.3

R8.0.4

R8.0.4

R8.0.5

R8.0.5

R8.0.6

R8.0.6

R8.1.5

R8.1.5

R8.1.6

R8.1.6

R9.0.1

R9.0.1

R9.2.0

R9.2.0

R8.1.7

R8.1.7

Oracle 10

Oracle 10

g

g

(R10.1.0)

(R10.1.0)

ターミナル・リリース ターミナル・リリース ターミナル・リリース

(37)

注記:

y

本資料では、R8.0.5からR10.1.0へのバージョ

ンアップの、具体的手順についてガイドいたし

ます。

y

作業内容

i.

R8.0.6(ターミナル・リリース)へのアップグレード

ii.

DBUAを使用した10gへのアップグレード

(38)

i.R8.0.6

(ターミナル・リリース)

へのアップグレード

y

バックアップ

– SVRMGR を起動し、 CONNECT INTERNAL 接続します。 – “shutdown normal” でデータベースを停止します。 – データベース全体のバックアップを取得して下さい。

y

R8.0.5のアン・インストール(オプション)

– 現行R8.0.5データベースのORACLE_HOMEと、R8.0.6データベースの ORACLE_HOMEが同じ場合は、インストーラ orainst を用いて現行のリリース を アン・インストールして下さい。 y 別のORACLE_HOME に 8.0.6 をインストールする場合には、8.0.5 を アン・ インストールする必要はありません

y

R8.0.6のソフトウェアをインストール

– リリース8.0.6 で提供されている Installer を起動します。 – "Install, Upgrade, or De-Install Software"を選択して下さい。

– "Install New Product - Do Not Create DB Objects"を選択して下さい。

– プロンプトが表示されたら新しいORACLE_HOMEディレクトリを入力します – インストールする製品を選択します。Install ボタンを選択しインストールを開始

(39)

i.R8.0.6

(ターミナル・リリース)

へのアップグレード

y

初期化パラメータ・ファイルのコピー

– initSID.ora ファイルを既存のディレクトリからコピーします。

– initSID.ora ファイル内に ifile エントリがある場合、ifileもコピーします。 – orapwSID など passwordファイルがある場合は、これもコピーして下さい。 – initSID.oraを修正し、ifile エントリが新しいバージョンのファイルを指定 するように更新して下さい。

y

環境変数の設定確認

– 以下の環境変数について、R8.0.6のインストールに対応した値になって いるかを確認します。 y ORACLE_HOME y PATH y ORA_NLS33 y ORACLE_BASE y LD_LIBRARY_PATH y ORACLE_PATH (使用している場合) ⅰ.ターミナル・リリース)へのアップグレード

(40)

i. R8.0.6

(ターミナル・リリース)

へのアップグレー

y

データベース・オブジェクトのアップグレード

– SVRMGRを起動しconnect internalで接続します。 – startup restrict でデータベースを起動します。 – 8.0.6 の$ORACLE_HOME/rdbms/adminディレクトリにあるスクリプトを 実行して、DBオブジェクトのアップグレードを実施します y R8.0.3からのアップグレードの場合: u0800030.sql y R8.0.4からのアップグレードの場合: u0800040.sql y R8.0.5からのアップグレードの場合: u0800050.sql – R8.0.5からの実行例 SVRMGR> @u0800050.sql

– Advanced Replication を使用している場合はcatrep.sqlを実行して下さい

y 使用されていない場合は、実行の必要はありません。

y

Invalid になっているオブジェクトを再コンパイル

y utlrp.sql を実行して下さい。

– 必ずしも実行する必要はありませんが、実行をお勧めします。

y ALTER SYSTEM DISABLE RESTRICTED SESSION を実施

– セッション制限を開放します。

(41)

DBUAを起動するOSユーザーについて

y

移行元データベースのデータファイルへの読 み込み

/

書き込みの

OS権限が必要です。

OS権限が正しく付与されていない場合、DBUAの進行中に

ORA-27070が発生し、中断されます

y

DBUAを起動するOSユーザーが…

1.

移行元データベースのインストール・ユーザーの時

– ユーザーの環境変数を、10gのインストールを行う ORACLE_HOME、ORACLE_BASE等へ変更します 2.

新規の10gインストール・ユーザーの時

– 移行元データ・ファイルの読み/書き権限を新規ユーザへ付与 するため、パーミッションをOSレベルで変更します。 ⅱ.DBUAを使用した10gへのアップグレード

(42)

DBUAの使用にあたって

y

移行元データベースに必要な要件

SYSTEM表領域のサイズ

y 124MB以上が確保されている必要があります。 y あらかじめ領域を確保してください。 –

SYSTEMロールバック・セグメントのサイズ

y 90MB以上が必要です。 y DBUAから拡張できます。 –

REDOログ・ファイルのサイズ

y 各ファイルに4MB以上のサイズが必要です。 y DBUAから拡張できます。 –

TEMP表領域のサイズ

y SYSユーザーの一時表領域に50M 以上のサイズが必要です。 y あらかじめ領域を確保して下さい。 ⅱ.DBUAを使用した10gへのアップグレード

(43)

DBUAの起動

y

Oracle Data Migration Assistant の起動

– ウィザード起動コマンド – 移行元のデータベースは、起動している必要があります。

y

Oratab内に記述されているデータベースをアップグ

レード対象として選択できます。(UNIX版のみ)

– Oratabに記述がない場合、以下のように記述を追加してください。 – OratabはSolarisの場合、/var/opt/oracleディレクトリに存在します。 $ dbua & <インスタンス名>:<ORACLE_HOMEのパス>:<OSブート時の自動起動の可否>

例: ora806:/usr2/ora806/product:N

ⅱ.DBUAを使用した10gへのアップグレード

(44)

参考 - OUIからの起動

10gインストール時に、「既存データベースのアップグレードを行う」を選択すると、 OUIからDBUAを起動することができます。

(45)

DBUAの実行 (1)

Database Upgrade Assistant が起動されると、下記の画面が表示されます。

(46)

DBUAの実行 (2)

y

移行するデータベースを選択します。

– Oratabファイル内の記述されているデータベースがリストされます。

(47)

DBUAの実行 (3)

y

NCHAR型への変換を推奨するアラート

– NCHAR型への変換作業は、データベースのアップグレード完了後にも 行うことができます。 – 「はい」を選択して続行してください。 ⅱ.DBUAを使用した10gへのアップグレード

(48)

DBUAの実行 (3)

y

SYSTEM表領域のチェック

– SYSTEM表領域が124MB以上である必要があります – DBUAから自動拡張できないので、別途コマンドライ ンからサイズの拡張を行う必要があります。

y

SYSTEMロールバック・セグメントのチェック

– SYSTEMロールバックセグメントが90MB以上ある必 要があります。 – 「続行」をクリックすると、DBUAが自動拡張を行いま す。

y

REDOログファイルの拡張

– 各REDOログファイルは4MB以上である必要がありま す。 – 「はい」をクリックすると、現在のREDOログを削除して、 新規のREDOログを作成します。 ⅱ.DBUAを使用した10gへのアップグレード

(49)

DBUAの実行 (4)

10gには、新たにSYSAUX表領域が必要になります。

SYSAUX表領域を構成するデータファイル名とサイズを指定します。

(50)

補足:SYSAUX表領域

y

SYSAUX表領域とは

Oracleで使用するオプション類を有効にするためのメタデータ

(ディクショナリ情報)を作成する表領域です。

y このメタデータはOracle8/8i/9iでは様々な表領域に格納されていました。 – LogminrはSYSTEM表領域、STATSPACKは任意の表領域、XMLDBは XML表領域…など –

Oracle 10g ではSYSAUX表領域は必須です。また削除、表領

域名の変更、読み取り専用化はできません。

メンテナンスの実行には

SYSDBA権限が必要です。 また、

SYSAUX表領域の属性は以下のとおりで変更は出来ません。

y PERMANENT(永続表領域) y READ WRITE(読み書き可能)

y EXTENT MANAGEMENT LOCAL(ローカル管理)

y SEGMENT SPACE MANAGEMENT AUTO(自動セグメント領域管理:ASSM)

SYSAUXにメタデータが格納された機能の情報については

v$sysaux_occupants を参照します。

(51)

DBUAの実行 (4)

アップグレード後に自動でINVALIDオブジェクトのコンパイルを行うかを選択します。

DBUAを使用せず、手動でコンパイルすることもできます。

(52)

DBUAの実行 (5)

DBUAによるアップグレード実行直前に、データベースの全体バックアップを実施す

るかを選択します。ONにするとアップグレードの失敗時に、DBUAから全体リストア を実施できるため、お勧めです。

(53)

DBUAの実行 (6)

アップグレード後の10gデータベースを、OEMから管理するか選択します。

Grid ControlのAgentは自動的に検出されます。

(54)

DBUAの実行 (6)

アップグレード後の10gデータベースを、OEMから管理するか選択します。管理する 場合には、DB Control か Grid Control のどちらかを選択します。

(55)

DBUAの実行 (7)

アップグレード実行前の最終確認画面

(56)

DBUAの実行 (8)

アップグレード実行中の画面 ~ ステータス確認

(57)

DBUAの実行 (9)

アップグレード実行中の画面 ~ 処理の完了

(58)

DBUAの実行 (10)

(59)

DBUA実行後の処理

2.

初期化パラメータの変更

COMPATIBLE = 9.2.0COMPATIBLE = 10.0.0

1.

ログファイルの確認

場所:$ORACLE_BASE/admin/<インスタンス名>/upgrade Backup.log (オプション) RMANによるバックアップのログ PreUpgrade.log アップグレード前処理のログ Oracle_Server.log アップグレード処理結果ログ UpgradeResults.html DBUAの最後で表示される結果のレポート PostUpgrade.log アップグレード後処理のログ emRepository.log (オプション) OEM構成時のログ ⅱ.DBUAを使用した10gへのアップグレード

(60)

COMPATIBLEパラメータについて

y

COMPATIBLE 初期化パラメータとは

– データベースの互換性を制御のためのパラメータです。 – このパラメータ値が10.0.0でない場合、一部の10gの新機能は使用でき ません。 y アップグレード作業に際してのパラメータ値の注意 – Oracle Database 10gへ、手動で(アップグレード・ユーティリティを使用し て)アップグレードする際には、COMPATIBLE 初期化パラメータを9.2.0 (Oracle Database 10g リリース1(10.1)の最小設定値)に設定する必要が あります。 – アップグレードが完了してから、この値を10.0.0へ書き直します。 デ ー タベー スのバー ジョ ン デ フ ォルト値 最小値 最大値 Ora cl e8 8.0.6 8.0.0 8.0.0 8.0.6 Ora cl e8i 8.1.7 8.0.0 8.0.0 8.1.7 Ora cl e9i R 2(9.2) 8.1.0 8.1.0 9.2.0 バージョンによるCOMPATIBLE 初期化パラメータの違い ⅱ.DBUAを使用した10gへのアップグレード

(61)

アップグレード後の作業一覧

I.

Oracle8i (8.1.7)、Oracle8 (8.0.6)からOracle10gへのアップグレー

ド後の作業

1. NCHAR型の変換

2. Server Manager用スクリプトの移行 3. LONG型からLOB型への移行(推奨)

4. DBMS_STATS パッケージで作成された統計表のアップグレード

II.

Oracle8 (8.0.6)からOracle10gへのアップグレード後のみに必要な

作業

1. 使用禁止のファンクション索引の再構築 2. マテリアライズド・ビューのアップグレード 3. パラレル実行のためのパラメータ調整 4. キュー表のアップグレード 5. リカバリ・カタログのアップグレード

(62)

R8.1.7/R8.0.6からのアップグレード後の

処理①

1.

NCHAR型の変更

データベースにNCHAR型の列を持つ表が含まれている場合は、

列をアップグレードする必要があります。

NCHAR型のアップグレードには、utlnchar.sql スクリプトを実行

します。

デフォルトでアップグレードに選択された各国語キャラクタ・セッ

トを上書きするには、n_switch.sql スクリプトを実行します。

上記の2つのスクリプトは$ORACLE_HOME/rdbms/admin ディ

レクトリに格納されています。

実行後はデータベースを再起動してください。

(63)

R8.1.7/R8.0.6からのアップグレード後の

処理②

2.

Server Manager 用スクリプトの移行

Server Manager (svrmgrl コマンド) はR9.0.1以降サポートされて

いません。

Server Manager を使用したラインモード・スクリプトを、

SQL*Plusへ対応した形へ変更する必要があります。

3.

LONGからLOBへの移行

LONG データ型の、LOB データ型(BFILE、BLOB、CLOB お

よびNCLOBへの移行を推奨します。

各データ型の相違については、「Oracle Database 概要」をご覧く

(64)

R8.1.7/R8.0.6からのアップグレード後の

処理②

4.

DBMS_STATS パッケージで作成された統計表のアッ

プグレード

DBMS_STATS.CREATE_STAT_TABLEを使用して統計表を

作成した場合、この表をアップグレードする必要があります。

ユーザー作成の各統計表にこの処理を実施する必要がありま

す。

EXECUTE DBMS_STATS.UPGRADE_STAT_TABLE (‘<統計表所有ユーザー>’, ‘<統計表名>’)

(65)

R8.0.6からのアップグレード後の処理①

1.

使用禁止のファンクション索引の再構築

– アップグレードで一部のファンクション索引が使用禁止になることがあります。 – 次のSQL 文を発行し、リストされたファンクション索引の再構築が必要です。

2.

マテリアライズド・ビューのアップグレード

– Oracle 8 からアップグレード or インポートされたマテリアライズド・ビューでは、Oracle 8i 以上でサポートされるサマリー管理機能を使用できません。

– アップグレードにはALTER MATERIALIZED VIEW ENABLE QUERY REWRITEを発 行します。

SELECT owner, index_name, funcidx_status FROM dba_indexes WHERE funcidx_status = 'DISABLED';

(66)

R8.0.6からのアップグレード後の処理②

3.

パラレル実行のためのパラメータ調整

Oracle8i 以上では、パラレル実行のメッセージ・バッファはラージ・プー ルから割り当てられます。以前のリリースでは、共有プールから割り当 てられていました。この変更により発生する問題を避けるために、初期 化パラメータ・ファイルの次のパラメータを調整する必要があります。 y SHARED_POOL_SIZE、LARGE_POOL_SIZE

4.

キュー表のアップグレード

– Oracle8i以降で実装されたAQ拡張機能を使用する場合には、キュー表 のアップグレードが必要です。 –  DBMS_AQADM.MIGRATE_QUEUE_TABLEパッケージを使用しま す。

5.

リカバリ・カタログのアップグレード

Oracle Databaseバックアップおよびリカバリ・アドバンスト・ユー

ザーズ・ガイドを参照して下さい。

(67)

AGENDA

1.

基本知識と用語

2.

アップグレードに必要な準備

3.

アップグレード作業手順

y

DBUA

- DBUAの使用によるアップグレード

- アップグレード後の処理

y

Export/Import

- Export/Import の使用手順

- 表領域移行(TTS) の使用手順

4.

アプリケーションのアップグレード

(68)

アップグレード手順の概要

元データベース環境の記録

元データベース環境の記録

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

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

OS OSのアップグレードのアップグレード

10

10

g

g

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

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

運用再開

運用再開

DBUA

DBUA

Export / ImportExport / Import

Unload&Load

(69)

Export/Importによるアップグレード

y

3通りのパスが存在します。

全体移行

ユーザー/表単位での移行

(70)

Export/Importによる全体移行

y

全体エクスポート/インポートを使用した10gへの

全体移行では、移行元のバージョンが限定され

ています

対象となる移行バージョン

y Oracle8 R8.0.6

y Oracle8i R8.1.7

y Oracle9i R9.0 / R9.2

注:DBUAを使用する場合と同様です。

(71)

Export/Importによる全体移行

y

全体エクスポート・コマンド (元データベースで実施)

y

全体インポート・コマンド (10gで実施)

y

注意:

– 全体インポートの際、移行元データベースと同じパス位置にデータベース・ ファイルが作成されます。また、Importユーティリティは指定されたファイ ルの作成は行いますがディレクトリの作成は行いません。 y 既に同名のファイルがある場合、あるいはディレクトリが存在しない 場合は、エラーが出力されます。 – したがって事前に既存のデータベース・ファイルをすべて移動させるか、 別環境上である場合は全く同じパスのディレクトリ作成が必要です。

% exp system/<パスワード>  full=Y file=<ダンプファイル名> log=<LOGファイル名>

例:$ exp system/manager full=Y file=all806.dup log=all806.log

% imp system/<パスワード>  full=Y dumpfile=<ダンプファイル名> logfile=<LOGファイル名>

(72)

Export/Importによる部分移行

y

ユーザー単位/表単位の移行

既存のデータベース環境を整理しながら移行する場合や、デー

タベースサイズが非常に大きい場合には、「ユーザー単位の移

行」や「表単位の移行」が非常に有効です。

大規模データベースの移行時には、「表単位の移行」が特に有

効です。

基本的にバージョンに依存しません。

SYSユーザー/SYSTEMユーザーの移行は、移行後のデータベ

ースでの管理情報の整合性がとれなくなる可能性がありますの

で、行ってはいけません。

(73)

Export/Importによる部分移行

y

先に紹介したデータベース環境の記録に加えて、以下の

情報の取得を推奨します。

ユーザー情報の記録

ロールとシステム権限の情報の記録

プロファイル情報の記録

リソース・コスト情報の記録

パブリック・シノニム情報の記録

パブリック・データベース・リンクの記録

y

情報の取得にあたっては、「データベース管理ツール」を

使用できます。

(74)

ユーザー単位の移行

y

インポートの事前準備

1.

データベース作成

2.

表領域の作成

3.

ロールバック・セグメントの作成

4.

ロール、プロファイルの作成

5.

リソースコストの設定

6.

ユーザーの作成

7.

ロール、ユーザーにシステム権限の付与

8.

パブリック・データベース・リンク、パブリック・シノニムの作成

※ 全エクスポートの場合は上記が自動的に作成されますが、ユーザ

ー単位の場合には、これらを手動で作成する必要があります。

(75)

ユーザー単位の移行

y

ユーザー・エクスポート・コマンド

y

ユーザー・インポート・コマンド

% exp system/<パスワード> file=<ダンプファイル名> log=<ログファイル名>     

owner=<所有者ユーザー>

$ exp system/manager file=user01.dup log=user01.log owner=scott

% imp system /<パスワード> fromuser=<ユーザー名> touser=<ユーザー名>  

file=<ダンプファイル名> log=<ログファイル名>

コマンドはSYSTEMユーザーで実施します。

全エクスポートされたダンプファイルからサブセットとして抜き出してImportすることも可能です。 fromuser=xxx ・・・インポートしたいユーザースキーマ。

touser=xxx ・・・新しく所有するユーザースキーマ。

(76)

ユーザー単位の移行

y

ユーザーおよび表単位での移行手順は、全体エクスポ

ートよりもオペレーションが若干複雑になるためユーザー

ミスを誘発する可能性があります。

y

これを回避する方法として、一旦、データベースの表デー

タ以外を Full Export し、移行先のデータベースにイン

ポートを行うことで作業を簡略化することが可能です。

(77)

ユーザー単位の移行

1.

データベースの表データ以外を全エクスポート

2.

ユーザー単位のエクスポートを実施

3.

インポートの準備

4.

ユーザー単位のインポートを実施

$ exp system/<password> file=full.dmp log=fullexp.log full=y rows=n

$ exp system/<password> file=user.dmp log=userexp.log owner=JAMES

$ imp system/<password> full=y file=full.dmp log=fullimp.log

$ imp system/<password> fromuser=JAMES touser=SMITH file=user.dmp log=userimp.log

※ インポートの際、表に付与されている制約があるとエラーになります。この場合には、エクスポート時に 制約を無効(disable)にし、インポート後に有効にします。

(78)

表単位の移行

y

表のエクスポート

y

表のインポート

$ exp scott/tiger file=scotts.dmp log=scotts.log tables=salary

コマンドは表の所有ユーザーで実施します

全エクスポートされたダンプファイルからサブセットとして抜き出してImportすることも可能です。

% exp <表所有者>/<パスワード> file=<ダンプファイル名> log=<ログファイル名>

tables=<表名>

$ imp scott/tiger file=scotts.dmp log=scotts.log tables=salary

% imp <表所有者>/<パスワード> file=<ダンプファイル名> log=<ログファイル名>

(79)

トランスポータブル表領域(TTS)

y

トランスポータブル表領域(TTS)とは

一連の表領域をあるデータ ベースから

Exportし、他のデータベ

ースに

Importして移動できます。

Oracle8i、9iからのアップブレードには、TTSを使用することがで

きます。

y Oracle8からのアップグレードでは使用できません。 y 移行元、移行先のデータベースはそれぞれ同一種類のOSで稼動し ている必要があります。(OSの バージョン違いは可) y Oracleのバージョン8.1.xの場合、移行元、移行先のデータベース は同じブロック・サイズ (db_block_size)である必要があります。 – バージョン9.0以降の場合は、マルチ・ブロック・サイズ機能によって、 異なるブロック・ サイズのデータベースへも移行できます。 y 移行元、移行先のデータベースは同じキャラクターセットである必要 があります。

(80)

トランスポータブル表領域(TTS)

1.

自己完結型の選択

– 自己完結型とは外部の表領域に対して参照を持たない表領域のこと です。トランスポートできるのは、自己完結型の表領域セットのみです ので、これを判断する為には、次のコマンドを発行し確認します。

ここでデータが表示された場合、外部に対して参照を持ってい

る事が分かります。したがってその表領域をTTSで移動させる

ことはできません。

SQL> connect sys/change_on_install

SQL> exec dbms_tts.transport_set_check('<表領域名>', TRUE) SQL> select * from transport_set_violations;

(81)

トランスポータブル表領域(TTS)

2.

コピー元の表領域を読取専用に変更

3.

エクスポート

– AS SYSDBA でエクスポートする必要があります。ユーザー名の指定にスペー スが入る為、 ¥(バックスラッシュ)と‘ (シングル・クオート) で括って下さい。

SQL> alter tablespace <表領域名> read only;

$ exp ¥'sys/change_on_install as sysdba¥' transport_tablespace=y ¥

> tablespaces=<表領域名> file=expmeta.dmp log=expmeta.log

(82)

トランスポータブル表領域(TTS)

4.

コピー元の表領域を書込みモードに戻します

5.

コピー先のデータベースにインポートします

Oracle 8i では、デフォルトの各国語キャラクタ・セットは、データベースのキャラ クタ・セットと同じですが、Oracle 9i / 10g では、デフォルトの AL16UTF16、また はUTF8 であるため、Oracle 8i でエクスポートしたトランスポータブル表領域を Oracle 9i / 10gにインポートしたときにエラーが発生します。

SQL> ALTER TABLESPACE XXXX READ WRITE;

$ imp ¥'sys/change_on_install as sysdba¥' transport_tablespace=y ¥

> datafiles=‘<copyしたデータファイルのフルパス>’ ¥

(83)

アップグレード手順の概要

元データベース環境の記録

元データベース環境の記録

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

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

OS OSのアップグレードのアップグレード

10

10

g

g

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

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

運用再開

運用再開

DBUA

DBUA

Export / ImportExport / Import

Unload&Load

(84)

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

y

全体バックアップの取得

データベースを10gへアップグレードした後、リカバリ

ーの起点となる全体バックアップ(コールド・バックアッ

プ)を取得します。

OSコマンドを使用する場合、10gのORACLE_HOME

以下すべてのファイル、全データファイル(SYSAUXを

構成するファイルを含む)、SPFILEをバックアップしま

す。

(85)

AGENDA

1.

基本知識と用語

2.

アップグレードに必要な準備

3.

アップグレード作業手順

y

DBUA

- DBUAの使用によるアップグレード

- アップグレード後の処理

y

Export/Import

- Export/Import の使用手順

- 表領域移行(TTS) の使用手順

4.

アプリケーションのアップグレード

(86)

プリコンパイラ・アプリケーションの    

アップグレード

y

Pro*C、Pro*COBOL、OCI アプリケーション

プリコンパイル⇒コンパイル⇒リンク

y

互換性規則

(規則1) クライアント環境を変更しない場合、再リンク不要 (規則2) クライアントアプリケーションは新リリースのサーバーに対してそのまま実 行できる (規則3) プリコンパイル済み、コンパイル済みのアプリケーションはより新しいライブ ラリと再リンク可能 (規則4) アプリケーションは3桁目(Oracle9i,10gでは2桁目)のアップグレードで再リン ク不要 (規則5) クライアントをダウングレードするならば、常に再プリコンパイル (規則6) プリコンパイル、コンパイル、リンクは同一プラットフォームで実行 (規則7) 同一OS、バージョンであれば、別のクライアント環境への配置可能

(87)

プリコンパイラ・アプリケーションの    

アップグレード

y

選択肢1:アプリケーションを変更しない

例えば、Oracle8iで開発したアプリをOracle9i/10

g

継続動作させるケースです。

クライアントのアップグレードは不要です

単純、簡単、管理コスト削減が実現できます

Oracle9i/10

g

の新機能や、パフォーマンス・メリットを

活用できません

(88)

プリコンパイラ・アプリケーションの    

アップグレー

y

選択肢2:アプリケーションを新しい Oracle9i/10

g

ライブラリと再リンクさせる

コード変更なし、再コンパイルなしで Oracle9i/10

g

ライ

ブラリに再リンクする方法です。

パフォーマンスの若干の向上を見込めます

(89)

プリコンパイラ・アプリケーションの    

アップグレード

y

選択肢3:プリコンパイルからやり直す

コード変更せずプリコンパイルからやり直す方法です

パフォーマンスの向上が見込まれます

以前のバージョンで検出できなかった問題を検出する

ことがあります

(90)

プリコンパイラ・アプリケーションの    

アップグレード

y

選択肢4:コード変更し、Oracle9i/10

g

新機能を

取り込む

Oracle9i/10

g

の機能のメリットを活かすことができます

パフォーマンスとスケーラビリティを最大化することが

できます

コード変更のコストが一番高い方法です

(91)

その他 アプリケーションの移行

y

PL/SQLの移行について

PL/SQLプログラムについては、各バージョンにおいて完全な下

位互換がとられています。万が一動作が変わるなどのトラブル

が発生した場合はサポート・センターまでお問い合わせ下さい。

y

その他プログラム・インターフェースについて

ODBC、OO4O、JDBCなど、PL/SQL以外のプログラム・インタ

ーフェースでは、バージョンによって使用不能にされたクラスや

関数があります。

使用しているアプリケーションで、移行後のプログラム・インター

フェースで無効化された機能があるか、マニュアル等で確認して

ください。

(92)

日本語列名・表名を操作するSQLの変更

y

日本語の列名や表名を扱うSQLの変更

Oracle8i R8.1.6以降のバージョンにおいて、日本語の指定に,

“(ダブルクォーテーション)を使用しなければならない仕様となって

います。

日本語列名・表名を使用している場合、R8.1.5以前のバージョン

からDatabase 10gへバージョンアップに際しては、SQL文で列名

と表名を記述する際に “(ダブルクォーテーション)にて囲むよう、変

更していただく必要があります。

(93)

新しい文字コード

y

JA16SJISTILDE

JA16EUCTILDE

~”の文字化けが、Oracle R9

i

(R9.0.1.4以上、Oracle R9.2以

)とWindowsとの間で、SJISとUnicode間で文字コード変換を

行う際に発生します。

y WINDOWSとOracleの間でのUnicodeの対応が異なるために発生 しまする問題です。 –

Windows上のUnicodeに対応するように、Oracle9

i

10

g

では、

JA16SJISTILDE と JA16EUCTILDE という2つの新しい文字コ

ードを実装しています。

y たとえば、文字化けが発生する時点で、文字コード設定が 「JA16SJIS」になっているのであれば、それを「JA16SJISTILDE」 に変更することで問題を解決できます。

(94)

Server Managerの廃止

y

Server ManagerはOracle9i 以降ではサポートされていません。

y

これまでServer Managerを使用していた管理やスクリプトは、

SQL*Plusで実行します。

– 例:接続の方法の違い y Server Manager 1. $ svrmgrl 2. $ SVRMGR >connect <user>/<password> y SQL*Plus 1. $ sqlplus /nolog

2. SQL> connect /as sysdba   あるいは

1. $ sqlplus <user>/<password>

y

Server Manager とSQL*Plus は、両方のプログラムでほぼ同じコ

マンドを共有しています

– 詳細の差分ついては“Oracle Database アップグレードガイド 10g、R10.1”  

(95)

日本オラクル株式会社 無断転載を禁ず この文書はあくまでも参考資料であり、掲載されている情報は予告なしに変更されることが あります。日本オラクル社は本書の内容に関していかなる保証もいたしません。また、本書 の内容に関連したいかなる損害についても責任を負いかねます。 Oracleは米国Oracle Corporationの登録商標です。文中に参照されている各製品名及びサービス 名は米国Oracle Corporationの商標または登録商標です。その他の製品名及びサービス名はそれ ぞれの所有者の商標または登録商標の可能性があります。

参照

関連したドキュメント

・ 各吸着材の吸着量は,吸着塔のメリーゴーランド運用を考慮すると,最大吸着量の 概ね

電子式の検知機を用い て、配管等から漏れるフ ロンを検知する方法。検 知機の精度によるが、他

①配慮義務の内容として︑どの程度の措置をとる必要があるかについては︑粘り強い議論が行なわれた︒メンガー

性能  機能確認  容量確認  容量及び所定の動作について確 認する。 .

a.と同一の事故シナリオであるが,事象開始から約 38 時間後に D/W ベン トを実施する。ベント時に格納容器から放出され,格納容器圧力逃がし装置 に流入する

性能  機能確認  容量確認  容量及び所定の動作について確 認する。 .

性能  機能確認  容量確認  容量及び所定の動作について確 認する。 .

性能  機能確認  容量確認  容量及び所定の動作について確 認する。 .