次のページ 前のページ 目次へ

2. はじめの一歩

2.1 概観

この節では、送られてきた CD から Oracle8i を取り出して、 ハードディスクにインストールするところまでたどりつけるように Linux を設定します。

Oracle のインストールをする前に、まず PC を組み立て、Linux を インストールし、各種設定を行って、ネットワークに接続しておか ねばなりません。

2.2 前提条件

思うに、最も重要な前提条件は、前提条件それ自体を軽視しないこと、そして、 ソフトウェアに関するかぎり、必要がなければ、違うふうにやらないことです。

私の悲しいお話は以下の通り−

Oracle は RedHat Linux の上で大部分の開発を行ったようです。 平穏なインストールのためには、同じ事をしましょう。他のディストリ ビューションにインストールしようとしたときのぞっとする話をいくつか 耳にしたことがあります。

ごくありふれた RH6 の設定を使ったところ、ほとんど問題は 起きませんでした。私は、JRE version 1.1.6v5 をダウンロード・ インストールし、1999年8月までのすべてのパッチを当てました。 さらにカーネルのバージョンを 2.2.13 に上げたのですが、 これは私のネットワークカードを使えるようにするためでした。 Oracle は RedHat 付属の 2.2.5 カーネルでもきっと動くはずです。

注意。Oracle のインストーラは JRE の実行ファイルが /usr/local/jre/bin/jre にあるという前提で実装されている ようです。だからと言ってそこに JRE をインストールしなければなら ないということではありませんが (下記参照) JDK で代用するわけには いきません。これは重要なポイントなので、もういちど言います。 −必ず JRE を使うことです。Oracle のインストーラは JDK とは一緒に 動きません! (訳注:JRE のダウンロードが必要なのは R8.1.5 だけです。 Linux 版でも R8.1.6 では CD の中にインストール用の JRE が含まれて いますし、R8.0.5 はインストーラが Java を使いません。R8.1.6 の試用版は Oracle Technet でダウンロード可能です)

JRE の作業版を取得するために、次の手順を実行しました。

  1. Blackdown のウェブサイト から Java Runtime Environment をダウンロードする。
  2. JRE をインストールしたい場所に移動する -
    cd /usr/local
    
  3. アーカイブを解凍する -
    bzip2 -d -c jre-1.1.6-v5-glibc-x86.tar.bz2 | tar xvf -
    
  4. Oracle が想定する場所と実際の場所の間にシンボリックリンクを張る -
    ln -s jre116_v5 jre
    
ハードウェアに関していうと、一定の「基本」水準を越えてさえいれば、 Linux の動くたいていのハードウェアの上で Oracle は動くはずです。 参考までに、私のシステムは Intel Celeron 446 MHz に 128 MB のメモリ、 8 GB のハードディスク、そして DM9102 ネットワークカードです。 これは、重いデータベースアプリケーション用のマシンではないものの、 ちょっとしたテストや開発システム用には十分すぎるほどです。

2.3 Linux の設定

ディストリビューションの設定

前節で指摘した通り、Oracle は RedHat 6.0 を使って開発を行っている ので、穏便なインストールのためには、読者もおそらくこれを使ったほうが いいでしょう。

ところで、Oracle を動かすためには、どんなオプションを使い、膨大な数の パッケージの中でどれとどれをインストールしたらいいのでしょうか?

まず、スワップ空間の2・3倍のメモリが必要です。(ただインストーラを 動かすだけでも、約 200MB の実また仮想メモリが必要になるでしょう!) 通説とは裏腹に、Linux のスワップパーティションは、128MB より大きく することができます。

他のパーティションのコンフィギュレーションもまた重要なことがあります。 必ず Oracle のソフトウェアは OS とは別のパーティションに入れ、Oracle の データファイルはさらに別のパーティションに入れるようにしてください。 これは、データファイルがフラグメント化しないようにするためです。 (実際の環境では、Oracle はいくつものディスクの上に散らばって存在する 可能性が高いものです。このことに関してさらに情報を得るためには、 よい本がいくつもあります)

ソフトウェアに関しては、私は、安直なオプションを選び、ただほとんど すべてをインストールしました。必要なのは、確実にすべての 'base' パッケージ、X Windows (インストール・ルーティンは Java GUI)、そして コーディングするつもりのあるなしにかかわらず開発用ツールです。Oracle とデータベースの大きさに比べたら、Linux ディストリビューションは 微々たるもので、たぶん 1GB もないでしょう。楽するために、すべてを インストールする価値はあります!

カーネルのパラメータ

Oracle のドキュメントは、より多くの共有メモリを得るために、 Linux カーネルに手を加えることを推奨しています。これは、Linux では非常に難しい (たいていの商用 Unix とちがって、カーネルを 再コンパイルしなければならない) ので、私の取ったアプローチは、 とにかくインストールをしてしまうことでした。RedHat Linux デフォルトの設定はうまくいきました。大規模な開発や仕事用のシステムの ためには設定を変更しなければならないかもしれませんが。

そもそも Oracle を動かすためにカーネルを再コンパイルしなければ ならない人たちもいたことに注意してください。同じマシン上で 走らせている他のソフトウェアに依存している部分があると思います。

新しいカーネルを構築するには、Oracle のドキュメント (インストール CD 上の HTML ファイル) と Linux Kernel HOWTO の指示に従ってください。

ユーザとグループ

LinuxConf(あるいはお好みの任意の方法) を使って、"dba" グループと "oracle" ユーザを追加する必要があります。"oracle" ユーザは、新しく 作られた "dba" グループに所属させたほうがいいでしょう。

"dba" グループに入れることで、どんなユーザも DBA にすることができます。 複数の DBA がいるのなら、監査のために役立つかもしれません。

2.4 はじめの一歩 Q&A

本当に 128MB の RAM が必要ですか?

128MB 以上のメモリを使うこと強く勧めます。それ以下では、どんなまともな 仕事をさせるのも難しいでしょう。

しかしながら、もし Java オプションを外して、すべての共有メモリ設定を 比較的小さいものにすれば、動かない理由はありません。64MB でうまくいった という話を聞いたことがあります。たぶん 32MB では無理でしょうけど。

心に留めておくべきことがあります。Oracle が推奨するところの半分だけで、 ソフトウェアを走らせることはできるかもしれませんが、インストールするとき には、その数字は意味を持ってきます。インストーラが 150MB を使っている という報告を耳にしたことがありますし、私の場合は、優に 120MB を超えて いるのを見ました。もし 64MB 以下のメモリしかないなら、スワップ空間と根気を 忘れないようにしてください。

次の方法でもうまくいくはずです。(試す機会はまだないのですが) - Oracle を他のより大きなマシンにインストールして、$ORACLE_HOME ディレクトリにコピーします。もしユーザとグループがすべて同じなら、 動かないはずはないと思います。

(訳注: dba グループだけ作ってあれば上記の方法で問題ありません。 唯一の問題として、インストーラを使ってプロダクトの追加 をするときはどうするか?実は「前に何をインストールしたか」を インストーラが記述したテキストファイルがあるので、それも まとめてコピーすればよいはずです。しかしながら、少なくとも日本オラクル では上記の方法によるインストールをサポートしていません)

RedHat 6.1 で動きますか?

私自身まだ 6.0 を走らせているので、言えることはこのコンフィギュレーションで 多くの人たちが成功したと主張していることだけです。

これを書いている時点では、Oracle8i は RedHat 6.0 上で動作保証されていて、 「他のディストリビューションにおける動作保証は現在進行中」とのことです。 (Oracle8i Patch FAQ)

Debian/SuSE/Mandrake/その他のディストリビューションで動きますか?

Oracle の定める仕様は Linux kernel version 2.2 以上で、GLIBC version 2.1 そして任意のウィンドウマネジャとなっています。理論上は、これらの要求仕様を 満たす任意のディストリビューションでうまくいくはずです。

実際には、Oracle はそれをサポートしないかもしれませんし、インストールを 完了させようとするときにより多くの問題にぶつかるかもしれません。他のことを するたいへんよい理由でもないかぎり、当てられるだけのパッチを当てた RedHat 6.0 に固執することを勧めます。 (訳注:R8.1.5 に関して、日本オラクルでは RedHat 6.0 英語版と TurboLinux Server 6.0 (日本語版)のみをサポート対象としています)

開発系カーネル上で動きますか?

動かないというはっきりした理由はありません - 当時の安定系カーネルが、 私のネットワークカードをサポートしていない一方、2.3.19 はサポート していたので、それをすこしの間使いました - しかし差し迫った必要が ないかぎり、近寄らないのがいちばん安全なのは確かです。ドライバが 安定系シリーズに盛り込まれるようになるやいなや、私はカーネルをもとに 戻しました。


次のページ 前のページ 目次へ