Oracle8i for Linuxをインストールするにあたり、日経Linuxの2000年7月号を参考にした。日経Linuxは2000年6月号から「Oracle8iによるDBサーバ構築」という特集が始まっていて、6月号は「マシンの組み立てとOSのインストール」で7月号が「Oracle8iインストール」である。しかも7月号の付録CDには「Red Hat Linux 6.2J FTP版」と「Oracle8i for Linux トライアル版」が収録されている。興味のある人は手に入れよう。
日本OracleはOracle8iが動作するLinuxのディストリビューションとしてサポートしているのはRed Hat Linux 6.0JとTurboLinux Server 6.0Jだけである。上位のバージョンだったら問題なく動くと思いがちだが、Linuxでは当てはまらない。事実、以前Oracle8.0.5で試したことがあるが、Red Hat Linux 5.2Jでは全く問題なくインストールできたにもかかわらず、Red Hat Linux 6.2Jではエラーが出てインストールできなかった。でも、Oracle8iはいろんなサイトの情報を元に、日経Linux7月号の特集の方法で何とかインストールできたので、それを紹介したい。
Oracle8iでは800MB以上の空きディスク容量と、256MB以上のメモリを推奨している。ディスクは問題ないが、たかがテストマシンのためだけに256MBものメモリを用意するのは勿体無い。もちろん集められるだけは集めたが、96MBしか集まらなかった。でも無事にインストールできたので大丈夫そうである。
次にLinuxの環境だが、何とOracle8iのインストーラはGUI、つまりX上じゃないと動かない。Linuxはカスタムでインストールし、次のものは必ずインストールしよう。
- X Window
- GNOME
- Developper
さらに、Oracle8iインストーラはJDKも使う。これはLinuxのパッケージにもOracle8iのパッケージにも含まれてないのでJavaの開発実行環境を提供しているBlackdownのサイト(http://www.blackdown.org)から
jre_1.1.6-v5-glibc-x86.tar.gzをダウンロードしてLinuxにインストールする必要がある。この辺は特集に載ってるので参考にして欲しい。
インストーラを実行するには、X上からコンソールで次のように実行する。
$ cd /mnt/cdrom/rensai2/oracle
$ ./runInstaller(※日経Linux7月号についているOralce8iトライアル版収録CDの場合のパス)
ところがエラーが出てインストーラが起動しない。このインストーラはRed Hat Linux 6.2Jでは動かないのだ。そこで、別に用意されているインストーラを使う。
$ cd /mnt/cdrom/rensai2/oracle/install/linux
$ ./runIns.shこれならちゃんとインストーラが起動するはずである。
インストールを進めると、「ルート権限で/tmp/OraInstall/orainstRoot.shを実行しなさい」って感じのことが英語で書いてあるウィンドウが表示される。インストーラのウィンドウはそのままにしてターミナルを立ち上げ、ルート権限になった後、orainstRoot.shを実行するのだが、このorainstRoot.shファイルには何故か実行権が無いため、実行できない。そこで実行権をつけた後、再度実行する。
$ chmod 755 orainstRoot.sh
$ ./orainstRoot.shまたは次のように実行することもできる。
$ bash orainstRoot.sh なお、あまりにも一瞬で処理が終わってしまうため、「本当にこれでいいのか?」と結構不安になった。
Available Product Componentsというウィンドウでインストールするコンポーネントを選択するが、このウィンドウには言語を選択するためのProduct Languageというボタンがある。特集には「このボタンをクリックし、日本語を選択して登録する。」と書いてある。
実際にボタンをクリックすると、既に英語が登録されているのでさらに日本語も追加する。
ここで間違っても既にある英語を消してはいけない。どうなるかは忘れたが・・・
Oracle Protocol Supportというウィンドウで、サポートするプロトコルが表示されるはずだが実際には何も表示されない。インストーラのバグらしい。製品版はどうなのだろう。これは気にせず次に進もう。
これはorainstRoot.shの実行と同じ現象である。対処法も同じ。
Oracle8iのインストールが終わると、データベースの作成に入る。これは特集の通りに進めていけばいいのだが、「データベースをいつ作成しますか?」というウィンドウで「データベースの即時作成」を選んでしまうとすんごく待たされた挙句エラーになってしまう。「情報をシェル・スクリプトに保存」を選択しよう。そうすれば無事にインストーラが終了する。
シェル・スクリプトの保存先はどこでもいいが、当然後で使うのでどこに保存したのかは覚えておこう。
インストーラが終了したら、さっきのシェル・スクリプトを実行しよう。ファイル名、保存先を変えていなければ、以下のコマンドでデータベースの作成が始まる。
$ cd $ORACLE_HOME
$ ./sqlorcl.shちなみにこの処理は私のマシンで1時間は楽に掛かりました(-_-;)
データベースをインストーラの即時作成で作った場合、最後にSYSアカウントとSYSTEMアカウントのパスワードが表示されるらしいが、シェル・スクリプトで作った場合は何も表示されない。また、デモ用のユーザとしてSCOTTアカウントも作成されている。それぞれのパスワードは次の通りである。
アカウント名 パスワード SYS change_on_install SYSTEM manager SCOTT tiger なお、Oracleでは大文字、小文字の区別は無い。