2010年1月25日月曜日

第16回 RailsをOracleに接続する

Ruby On RailsからOracleDBに接続する環境を構築する。OracleDBに接続するためにはoracleのライブラリが参照できる、設定と権限が無くてはならない、このためユーザーを作成してそれを「ruby」とした。

  1. インストール手順
    1. rootでログインして「ruby」グループ、ユーザーを作成する。oracleのライブラリを参照できるようにセカンダリユーザーグループに「oinstall」を指定する。プロファイルはoracleのものを流用して、後で作成する「/opt/ruby/bin」にパスを通しておく。
    2. # groupadd ruby
      # useradd -g ruby -G oinstall -d /export/home/ruby -m ruby
      64 ブロック
      # passwd ruby
      新しいパスワード:
      新しいパスワードを再入力してください:
      passwd: ruby のパスワードが変更されました
      # mkdir -p /opt/ruby
      # chown ruby /opt/ruby
      # cp /export/home/oracle/.profile /export/home/ruby/.profile
      # chown ruby /export/home/ruby/.profile
      # vi /export/home/ruby/.profile

      PATH=/usr/bin:/usr/sbin:/usr/ccs/bin:/usr/sfw/bin:/usr/ucb:$ORACLE_HOME/bin:.; export PATH

      PATH=/opt/ruby/bin:/usr/bin:/usr/sbin:/usr/ccs/bin:/usr/sfw/bin:/usr/ucb:$ORACLE_HOME/bin:.; export PATH

    3. 前回との差異を網伏せにした。すなわちruby-oci8(Oracle Database用の ruby インターフェース)、activerecord-oracle_enhanced-adapter(Oracleアダプタ)、unicode_utils(Unicode ユーティリティ)をインストールする。
    4. $ wget ftp://ftp.ruby-lang.org/pub/ruby/1.9/ruby-1.9.1-p378.tar.gz
      $ gzip -d ruby-1.9.1-p378.tar.gz
      $ tar xvf ruby-1.9.1-p378.tar
      $ cd ruby-1.9.1-p378
      $ ./configure -prefix=/opt/ruby --enable-pthread
      $ make
      $ make install
      $ wget http://rubyforge.org/frs/download.php/60719/rubygems-1.3.5.zip
      $ unzip rubygems-1.3.5.zip
      $ cd rubygems-1.3.5
      $ ruby setup.rb
      $ gem install ruby-oci8
      $ gem install activerecord-oracle_enhanced-adapter
      $ gem install unicode_utils
      $ gem install rails

    5. バージョンを明示してインストールしてもの。gemが判断してインストールしたものは下記のとおりになる。
    6. $ ruby -v
      ruby 1.9.1p378 (2010-01-10 revision 26273) [i386-solaris2.10]
      $ gem -v
      1.3.5
      $ gem list

      *** LOCAL GEMS ***

      actionmailer (2.3.5)
      actionpack (2.3.5)
      activerecord (2.3.5)
      activerecord-oracle_enhanced-adapter (1.2.3)
      activeresource (2.3.5)
      activesupport (2.3.5)
      rack (1.0.1)
      rails (2.3.5)
      rake (0.8.7)
      ruby-oci8 (2.0.3)
      unicode_utils (1.0.0)

  2. シェルスクリプト
  3. インストール手順を例によってシェルスクリプトにまとめた、これを/tmp以下に作成して、実行権限を与えて、実行する。注意点は、wgetによるダウンロードは通信状況に左右されるので、アボートした場合はそこから再実行する。

    1. rootユーザーで実行するシェルスクリプトは下記のとおり。
    2. #!/bin/sh

      groupadd ruby
      useradd -g ruby -G oinstall -d /export/home/ruby -m ruby
      passwd ruby
      mkdir -p /opt/ruby
      chown ruby /opt/ruby
      sed s'/^PATH=/PATH=\/opt\/ruby\/bin:/' /export/home/oracle/.profile > /export/home/ruby/.profile
      chown ruby /export/home/ruby/.profile
      exit

    3. rubyユーザーで実行するシェルスクリプトは下記のとおり。
    4. #!/bin/sh

      # install Ruby:
      wget ftp://ftp.ruby-lang.org/pub/ruby/1.9/ruby-1.9.1-p378.tar.gz
      gzip -d ruby-1.9.1-p378.tar.gz
      tar xvf ruby-1.9.1-p378.tar
      cd ruby-1.9.1-p378
      ./configure -prefix=/opt/ruby --enable-pthread
      make
      make install

      # install RubyGems:
      wget http://rubyforge.org/frs/download.php/60719/rubygems-1.3.5.zip
      unzip rubygems-1.3.5.zip
      cd rubygems-1.3.5
      ruby setup.rb

      # install Oracle Call Interface
      gem install ruby-oci8

      # install activerecord-oracle_enhanced-adapter
      gem install activerecord-oracle_enhanced-adapter

      # install Unicode string manipulation functions for Ruby 1.9.
      gem install unicode_utils

      # install Ruby on Rails:
      gem install rails

      exit

0 件のコメント:

コメントを投稿