i.R8.0.6 ( ターミナル・リリース ) へのアップグレード
II. Oracle8 (8.0.6) から Oracle10g へのアップグレード後のみに必要な 作業
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 したデータファイルのフルパス >’ ¥
> file=expmeta.dmp log=impmeta.log
アップグレード手順の概要
元データベース環境の記録 元データベース環境の記録
元データベースのバックアップ 元データベースのバックアップ
OSOSのアップグレードのアップグレード
10g 10 gデータベースのバックアップ データベースのバックアップ 運用再開 運用再開
DBUA DBUA
Export / ImportExport / Import Unload&LoadUnload&Load データコピーデータコピー
10g データベースのバックアップ
y 全体バックアップの取得
–
データベースを 10g へアップグレードした後、リカバリ ーの起点となる全体バックアップ(コールド・バックアッ プ)を取得します。
–
OS コマンドを使用する場合、 10g の ORACLE_HOME
以下すべてのファイル、全データファイル( SYSAUX を
構成するファイルを含む)、 SPFILE をバックアップしま
す。
AGENDA
1. 基本知識と用語
2. アップグレードに必要な準備 3. アップグレード作業手順
y
DBUA
- DBUA の使用によるアップグレード
- アップグレード後の処理
y
Export/Import
- Export/Import の使用手順 - 表領域移行( TTS) の使用手順
4. アプリケーションのアップグレード
プリコンパイラ・アプリケーションの アップグレード
y Pro*C 、 Pro*COBOL 、 OCI アプリケーション
–
プリコンパイル⇒コンパイル⇒リンク
y 互換性規則
(規則1) クライアント環境を変更しない場合、再リンク不要
(規則2) クライアントアプリケーションは新リリースのサーバーに対してそのまま実 行できる
(規則3) プリコンパイル済み、コンパイル済みのアプリケーションはより新しいライブ ラリと再リンク可能
(規則4) アプリケーションは
3桁目
(Oracle9i,10gでは
2桁目
)のアップグレードで再リン ク不要
(規則5) クライアントをダウングレードするならば、常に再プリコンパイル
(規則6) プリコンパイル、コンパイル、リンクは同一プラットフォームで実行
(規則7) 同一
OS、バージョンであれば、別のクライアント環境への配置可能
プリコンパイラ・アプリケーションの アップグレード
y 選択肢1:アプリケーションを変更しない
–
例えば、 Oracle8i で開発したアプリを Oracle9i/10
gで 継続動作させるケースです。
–
クライアントのアップグレードは不要です
–
単純、簡単、管理コスト削減が実現できます
–
Oracle9i/10
gの新機能や、パフォーマンス・メリットを
活用できません
プリコンパイラ・アプリケーションの アップグレー
y 選択肢2:アプリケーションを新しい Oracle9i/10
gライブラリと再リンクさせる
–
コード変更なし、再コンパイルなしで Oracle9i/10
gライ ブラリに再リンクする方法です。
–
パフォーマンスの若干の向上を見込めます
プリコンパイラ・アプリケーションの アップグレード
y 選択肢3:プリコンパイルからやり直す
–
コード変更せずプリコンパイルからやり直す方法です
–
パフォーマンスの向上が見込まれます
–
以前のバージョンで検出できなかった問題を検出する
ことがあります
プリコンパイラ・アプリケーションの アップグレード
y 選択肢4:コード変更し、 Oracle9i/10
g新機能を 取り込む
–
Oracle9i/10
gの機能のメリットを活かすことができます
–
パフォーマンスとスケーラビリティを最大化することが できます
–
コード変更のコストが一番高い方法です
その他 アプリケーションの移行
y PL/SQL の移行について
–
PL/SQL プログラムについては、各バージョンにおいて完全な下
位互換がとられています。万が一動作が変わるなどのトラブル が発生した場合はサポート・センターまでお問い合わせ下さい。
y その他プログラム・インターフェースについて
–
ODBC 、 OO4O 、 JDBC など、 PL/SQL 以外のプログラム・インタ ーフェースでは、バージョンによって使用不能にされたクラスや 関数があります。
–
使用しているアプリケーションで、移行後のプログラム・インター
フェースで無効化された機能があるか、マニュアル等で確認して
ください。
日本語列名・表名を操作する SQL の変更
y 日本語の列名や表名を扱う SQL の変更
–
Oracle8i R8.1.6 以降のバージョンにおいて、日本語の指定に,
“( ダブルクォーテーション ) を使用しなければならない仕様となって います。
–
日本語列名・表名を使用している場合、 R8.1.5 以前のバージョン から Database 10g へバージョンアップに際しては、 SQL 文で列名 と表名を記述する際に “( ダブルクォーテーション ) にて囲むよう、変 更していただく必要があります。
SQL> select “ 商品名 ” , “ 商品 ID” , “ 価格 ” from “ 商品マスター ” ;
新しい文字コード
y JA16SJISTILDE と JA16EUCTILDE
–
“
~” の文字化けが、
Oracle R9i
(R9.0.1.4以上、
Oracle R9.2以 上
)と
Windowsとの間で、
SJISと
Unicode間で文字コード変換を 行う際に発生します。
y WINDOWS
と
Oracleの間での
Unicodeの対応が異なるために発生 しまする問題です。
– Windows
上の
Unicodeに対応するように、
Oracle9i 、
10g では、
JA16SJISTILDE
と
JA16EUCTILDEという
2つの新しい文字コ ードを実装しています。
y
たとえば、文字化けが発生する時点で、文字コード設定が
「
JA16SJIS」になっているのであれば、それを「
JA16SJISTILDE」
に変更することで問題を解決できます。
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”APPENDIX-B [Server Manager
から
SQL*Plusへの移行]をご覧下さい。
ドキュメント内
Microsoft PowerPoint - 10gへの移行.ppt
(ページ 82-95)