2014/04/16

[Oracle] 複数の異なるバージョンのOracleサーバーを扱う場合の注意点

例えば社内に複数の異なるバージョンのOracleサーバーがある場合の注意点をチラ裏的にメモします。

実は答えはここにあります。
Oracle Client/Server Interoperability Support 現在の互換性に関するサポート状況(2013/08/01)

具体的な注意点としては以下の2点を挙げておきます。

.

注意点1 クライアント(ドライバ)バージョンの選択の話

集計業務や分析業務などのために複数のサーバーに接続する場合、ありますよね。
例えば私の環境の場合は、サーバーは Oracle9i 9.2とOracle11g 11.2 と Oracle12c 12.1 が混雑し、かつ一つのPCからどれにも接続する必要があったのですが、そんな時に上のリンク先のマトリクス図を見る必要があって、このいずれにも接続できるクライアントのバージョンは 11.1 または 11.2 であることが分かります。(この場合は11.2の方がBetterですね。)


注意点2 DBLINKが作れない話

もう一つこの話で結構悩ましいのが、データベースリンク(以下DBLINK)です。
サポートされないバージョン間で「CREATE DATABASE LINK」をすると、構文自体は通るのですが、作られたリンクテーブルを実際に参照しようとすると
ORA-03134: このバージョンのサーバーへの接続は、サポートされていません
というエラーが出ます。

ウチではOracle12cのサーバーからOracle9iのサーバーへDBLINKを作れないことでバージョン間マイグレーションやデータ連携などで結構困りました。

サポートに聞いてみたところ、直接DBLINK作るのは無理との回答でしたが、一つの解決策として
Oracle12c → Oracle11g → Oracle9i という風に間にブリッジのようなサーバーを挟むと作れる。
と教えてもらいました。

うーん、アクロバティック(°∀° )

残念ながらウチの場合は自由に使えるOracle11gがなかったのでコレは試してません。

0 件のコメント:

コメントを投稿