Cosminexus システム構築ガイド

[目次][用語][索引][前へ][次へ]

付録F.5 Solarisの場合

Solarisを使用する場合のOracleアクセスライブラリの再作成方法について説明します。

<この項の構成>
(1) 適用範囲
(2) Oracleアクセスライブラリ再作成の手順

(1) 適用範囲

Oracleアクセスライブラリを作成する機能は,次のOracleシステムを運用している場合に適用してください。

また,Oracleアクセスライブラリを作成する機能を使用するには,Sun WorkShop Cコンパイラが必要です。

(2) Oracleアクセスライブラリ再作成の手順

Oracleアクセスライブラリを再作成する手順を次に説明します。

次の手順は,必ず,運用ディレクトリが/opt/DABrokerとなっている環境で実行してください。Cosminexus DABroker Libraryの運用ディレクトリを/opt/DABroker以外に設定している場合は,いったん,Cosminexus DABroker Libraryのセットアップコマンドで運用ディレクトリを/opt/DABrokerに戻してから実行してください。

  1. Cosminexus DABroker Library既存ライブラリのバックアップ
    Cosminexus DABroker Libraryの既存ライブラリのバックアップを次のように取得してください。
    cd /opt/DABroker/lib
    • Cosminexus DABroker Libraryのデータベース種別にOracleを指定して,Oracle9i R9.0.1を使用している場合
      mv libdaO7901.so  libdaO7901.so_bk
    • Cosminexus DABroker Libraryのデータベース種別にOracleを指定して,Oracle9i R9.2.0を使用している場合
      mv libdaO7920.so  libdaO7920.so_bk
    • Cosminexus DABroker Libraryのデータベース種別にOracleを指定して,Oracle10g R10.1.0を使用している場合
      mv libdaO7101.so  libdaO7101.so_bk
    • Cosminexus DABroker Libraryのデータベース種別にOracle8iを指定して,Oracle9i R9.0.1を使用している場合
      mv libdaO8901.so  libdaO8901.so_bk
    • Cosminexus DABroker Libraryのデータベース種別にOracle8iを指定して,Oracle9i R9.2.0を使用している場合
      mv libdaO8920.so  libdaO8920.so_bk
    • Cosminexus DABroker Library のデータベース種別にOracle8iを指定して,Oracle10g R10.1.0を使用している場合
      mv libdaO8101.so  libdaO8101.so_bk
  2. 提供サンプルメイクファイルの修正
    Cosminexus DABroker Libraryでは,表F-15から表F-20に示す,各Oracleアクセスライブラリのサンプルメイクファイルを提供しています。使用している環境に合わせて,サンプルメイクファイルを修正して使用してください。なお,表中の番号は,次の内容を示しています。
    1:Cosminexus DABroker Libraryアクセスライブラリ名称
    修正しないでください。
    2:Cosminexus DABroker Library共用ライブラリ
    修正しないでください。
    3:Oracleクライアントライブラリ,およびOS提供ライブラリ
    Cosminexus DABroker LibraryのOracleアクセスライブラリは,OracleのOCIプログラムです。Oracleのマニュアルを参照し,OCIプログラム作成時に必要なOracleクライアントライブラリ,およびOS提供ライブラリを確認の上,使用している環境に合わせて修正してください。
    4:Cosminexus DABroker Library共用オブジェクトファイル
    修正しないでください。
    • Cosminexus DABroker Libraryのデータベース種別にOracleを指定して,Oracle9i R9.0.1 を使用している場合
      ファイル名:/opt/DABroker/sample/dab_demo_rdbms7901.mk

      表F-15 Oracle9i R9.0.1サンプルメイクファイル(Cosminexus DABroker Libraryのデータベース種別でOracle指定時)(Solarisの場合)

      番号 定義文
      1
      PROGRAM         = libdaO7901.so
      2
      LIBS            = -L $(DABLIB_HOME)/lib -ldacommon
      3
      ORALIB          = -L$(ORACLE_HOME)/lib -L$(ORACLE_HOME)/rdbms/lib -lclntsh
      3
      LDFLAGS         = -lposix4 -lthread -ldl -lc -lnsl -lsocket -G
      4
      OBJS            = $(DABLIB_HOME)/obj/dacdcntl.o  $(DABLIB_HOME)/obj/daO7901.a
      4
      all:            $(PROGRAM)
      4
      $(PROGRAM):     $(OBJS)
                      echo "Linking $(PROGRAM) ..."
                      ld -o $(PROGRAM) $(OBJS) $(LIBS) $(ORALIB) $(LDFLAGS)
                      echo "done"
    • Cosminexus DABroker Libraryのデータベース種別にOracleを指定して,Oracle9i R9.2.0を使用している場合
      ファイル名:/opt/DABroker/sample/dab_demo_rdbms7920.mk

      表F-16 Oracle9i R9.2.0サンプルメイクファイル(Cosminexus DABroker Libraryのデータベース種別でOracle指定時)(Solarisの場合)

      番号 定義文
      1
      PROGRAM         = libdaO7920.so
      2
      LIBS            = -L $(DABLIB_HOME)/lib -ldacommon
      3
      ORALIB          = -L$(ORACLE_HOME)/lib -L$(ORACLE_HOME)/rdbms/lib -lclntsh
      3
      LDFLAGS         = -lposix4 -lthread -ldl -lc -lnsl -lsocket -G
      4
      OBJS            = $(DABLIB_HOME)/obj/dacdcntl.o  $(DABLIB_HOME)/obj/daO7920.a
      4
      all:            $(PROGRAM)
      4
      $(PROGRAM):     $(OBJS)
                      echo "Linking $(PROGRAM) ..."
                      ld -o $(PROGRAM) $(OBJS) $(LIBS) $(ORALIB) $(LDFLAGS)
                      echo "done"
    • Cosminexus DABroker Libraryのデータベース種別にOracleを指定して,Oracle10g R10.1.0を使用している場合
      ファイル名:/opt/DABroker/sample/dab_demo_rdbms7101.mk

      表F-17 Oracle10g R10.1.0サンプルメイクファイル(Cosminexus DABroker Libraryのデータベース種別でOracle指定時)(Solarisの場合)

      番号 定義文
      1
      PROGRAM         = libdaO7101.so
      2
      LIBS            = -L $(DABLIB_HOME)/lib -ldacommon
      3
      ORALIB          = -L$(ORACLE_HOME)/lib -L$(ORACLE_HOME)/rdbms/lib -lclntsh
      3
      LDFLAGS         = -lposix4 -lthread -ldl -lc -lnsl -lsocket -G
      4
      OBJS            = $(DABLIB_HOME)/obj/dacdcntl.o  $(DABLIB_HOME)/obj/daO7101.a
      4
      all:            $(PROGRAM)
      4
      $(PROGRAM):     $(OBJS)
                      echo "Linking $(PROGRAM) ..."
                      ld -o $(PROGRAM) $(OBJS) $(LIBS) $(ORALIB) $(LDFLAGS)
                      echo "done"
    • Cosminexus DABroker Libraryのデータベース種別にOracle8iを指定して,Oracle9i R9.0.1を使用している場合
      ファイル名:/opt/DABroker/sample/dab_demo_rdbms8901.mk

      表F-18 Oracle9i R9.0.1サンプルメイクファイル(Cosminexus DABroker Libraryのデータベース種別でOracle8i指定時)(Solarisの場合)

      番号 定義文
      1
      PROGRAM         = libdaO8901.so
      2
      LIBS            = -L $(DABLIB_HOME)/lib -ldacommon
      3
      ORALIB          = -L$(ORACLE_HOME)/lib -L$(ORACLE_HOME)/rdbms/lib -lclntsh
      3
      LDFLAGS         = -lposix4 -lthread -ldl -lc -lnsl -lsocket -G
      4
      OBJS            = $(DABLIB_HOME)/obj/dacd8901.o  $(DABLIB_HOME)/obj/daO8901.a
      4
      all:            $(PROGRAM)
      4
      $(PROGRAM):     $(OBJS)
                      echo "Linking $(PROGRAM) ..."
                      ld -o $(PROGRAM) $(OBJS) $(LIBS) $(ORALIB) $(LDFLAGS)
                      echo "done"
    • Cosminexus DABroker Libraryのデータベース種別にOracle8iを指定して,Oracle9i R9.2.0を使用している場合
      ファイル名:/opt/DABroker/sample/dab_demo_rdbms8920.mk

      表F-19 Oracle9i R9.2.0サンプルメイクファイル(Cosminexus DABroker Libraryのデータベース種別でOracle8i指定時)(Solarisの場合)

      番号 定義文
      1
      PROGRAM         = libdaO8920.so
      2
      LIBS            = -L $(DABLIB_HOME)/lib -ldacommon
      3
      ORALIB          = -L$(ORACLE_HOME)/lib -L$(ORACLE_HOME)/rdbms/lib -lclntsh
      3
      LDFLAGS         = -lposix4 -lthread -ldl -lc -lnsl -lsocket -G
      4
      OBJS            = $(DABLIB_HOME)/obj/dacd8920.o  $(DABLIB_HOME)/obj/daO8920.a
      4
      all:            $(PROGRAM)
      4
      $(PROGRAM):     $(OBJS)
                      echo "Linking $(PROGRAM) ..."
                      ld -o $(PROGRAM) $(OBJS) $(LIBS) $(ORALIB) $(LDFLAGS)
                      echo "done"
    • Cosminexus DABroker Libraryのデータベース種別にOracle8iを指定して,Oracle10g R10.1.0を使用している場合
      ファイル名:/opt/DABroker/sample/dab_demo_rdbms8101.mk

      表F-20 Oracle10g R10.1.0サンプルメイクファイル(Cosminexus DABroker Libraryのデータベース種別でOracle8i指定時)(Solarisの場合)

      番号 定義文
      1
      PROGRAM         = libdaO8101.so
      2
      LIBS            = -L $(DABLIB_HOME)/lib -ldacommon
      3
      ORALIB          = -L$(ORACLE_HOME)/lib -L$(ORACLE_HOME)/rdbms/lib -lclntsh
      3
      LDFLAGS         = -lposix4 -lthread -ldl -lc -lnsl -lsocket -G
      4
      OBJS            = $(DABLIB_HOME)/obj/dacd8101.o  $(DABLIB_HOME)/obj/daO8101.a
      4
      all:            $(PROGRAM)
      4
      $(PROGRAM):     $(OBJS)
                      echo "Linking $(PROGRAM) ..."
                      ld -o $(PROGRAM) $(OBJS) $(LIBS) $(ORALIB) $(LDFLAGS)
                      echo "done"
  3. Cosminexus DABroker LibraryのOracleアクセスライブラリの再作成
    サンプルメイクファイルを修正後,次の環境変数を入力し,シェルを実行してください。なお,シェルを実行するときは,カレントディレクトリをシェルファイルがあるディレクトリに移動してください。
    (メイクファイル実行手順 標準シェルを使用の場合)
    ORACLE_HOME = ORACLE HOMEディレクトリ
    export ORACLE_HOME
    DABDIR = /opt/DABroker
    export DABDIR
    • Cosminexus DABroker Libraryのデータベース種別にOracleを指定して,Oracle9i R9.0.1を使用している場合
      $ sh ./dab_rdbms7901.sh
    • Cosminexus DABroker Libraryのデータベース種別にOracleを指定して,Oracle9i R9.2.0を使用している場合
      $ sh ./dab_rdbms7920.sh
    • Cosminexus DABroker Libraryのデータベース種別にOracleを指定して,Oracle10g R10.1.0を使用している場合
      $ sh ./dab_rdbms7101.sh
    • Cosminexus DABroker Libraryのデータベース種別にOracle8iを指定して,Oracle9i R9.0.1を使用している場合
      $ sh ./dab_rdbms8901.sh
    • Cosminexus DABroker Libraryのデータベース種別にOracle8iを指定して,Oracle9i R9.2.0を使用している場合
      $ sh ./dab_rdbms8920.sh
    • Cosminexus DABroker Libraryのデータベース種別にOracle8iを指定して,Oracle10g R10.1.0を使用している場合
      $ sh ./dab_rdbms8101.sh
  4. 再作成後のOracleアクセスライブラリのCosminexus DABroker Libraryのライブラリ格納用ディレクトリへのコピー
    makeコマンドを実行したディレクトリ環境下で再作成したOracleアクセスライブラリを次のようにコピーしてください。
    再作成したOracleアクセスライブラリは,makeコマンドを実行したカレントディレクトリに作成されます。
    • Cosminexus DABroker Libraryのデータベース種別にOracleを指定して,Oracle9i R9.0.1を使用している場合
      cp libdaO7901.so  /opt/DABroker/lib/libdaO7901.so
    • Cosminexus DABroker Libraryのデータベース種別にOracleを指定して,Oracle9i R9.2.0を使用している場合
      cp libdaO7920.so  /opt/DABroker/lib/libdaO7920.so
    • Cosminexus DABroker Libraryのデータベース種別にOracleを指定して,Oracle10g R10.1.0を使用している場合
      cp libdaO7101.so  /opt/DABroker/lib/libdaO7101.so
    • Cosminexus DABroker Libraryのデータベース種別にOracle8iを指定して,Oracle9i R9.0.1を使用している場合
      cp libdaO8901.so  /opt/DABroker/lib/libdaO8901.so
    • Cosminexus DABroker Libraryのデータベース種別にOracle8iを指定して,Oracle9i R9.2.0を使用している場合
      cp libdaO8920.so  /opt/DABroker/lib/libdaO8920.so
    • Cosminexus DABroker Libraryのデータベース種別にOracle8iを指定して,Oracle10g R10.1.0を使用している場合
      cp libdaO8101.so  /opt/DABroker/lib/libdaO8101.so
  5. Cosminexus DABroker Libraryの再セットアップ
    作成したOracleアクセスライブラリを/opt/DABroker/libにコピーしたあと,再度,Cosminexus DABroker Libraryのセットアップコマンドを実行してください。