このFAQでは、MIRACLE LINUX V4.0にOracle9i Database Release 2 (9.2.0)をインストールする方法について説明します。インストールする方法としては、次の2つの方法があります。
このFAQではInstall Navigator for Oracle(以下、oranavi)を使わない方法について説明します。oranavi を使う方法につきましては、oranaviを起動すると表示されるドキュメントをご覧下さい。
※Install Navigator for Oracleとは、Oracle製品のインストールを支援するユーティリティです。とても簡単にOracleをインストールできるのでお勧めです。
インストールは下記の手順で行います。この文書では、おもにOSのインストールからOracle Universal Installerの起動までについて説明します。Oracle Universal Installerが起動してからについては、下記のOracle製品マニュアルをご覧ください。
- Oracle9iのパッチについて
Oracle9i Database Release 2 (9.2.0)には、9.2.0.1と9.2.0.4の2種類のインストールメディアがありますが、ここでは9.2.0.4を使用した例を説明します。
MIRACLE LINUX V4.0にOracle9iをインストールするためには、日本オラクル社が提供する以下のパッチが必要です。
ただしMIRACLE LINUX V4.0では、Patch#3006854と同等の機能を持つoracle9i_supportというRPMパッケージをインストールCDに同梱しています。これを使用すれば、9.2.0.4のメディアを使用するときに限り、追加のパッチが無くてもOracle9iをインストールできます。
oracle9i_supportのインストールについては、7. MIRACLE LINUX V4.0固有の環境設定をご覧下さい。
また非同期 I/Oを使用しない場合は非同期I/Oのパッチを適用する必要はありません。
これらのパッチは、次のいずれかの方法で入手できます。1と2は、Oracle製品に関するサポート契約が必要です。
- OiSC(Oracle Internet Support Center)
- オラクル製品の有償サポート契約を締結しているサポートセンター
- CD Pack for Linux x86 (v10)以降に収録されている「Oracle9i Database Release 2 (9.2.0) JP Update CD」
これらのパッチの適用方法は、このドキュメントでも説明しますが、詳細は下記のドキュメントをご覧になるか、オラクル製品の有償サポート契約を締結しているサポートセンターへお問い合わせください。
- OS のインストール
インストレーションガイドに従ってインストールします。インストールの種類では「すべて」などを選択してください。また、ハードウェア要件は下記の通りです。ディスクパーティション設定の際には、注意してください。
項目 | 内容 |
搭載メモリ | 512MB以上 |
空きディスク領域 | 3.5GB以上(バイナリ:2.5GB。DB:1.0GB) |
スワップ領域 | 512MB以上、もしくは搭載メモリサイズの2倍 |
その他 | /tmpに400MB以上の空きディスク領域 |
- ハードウェア要件の確認
Oracle9i Databaseをインストールするには、前記のハードウェア要件を満たす必要があります。それぞれについて確認します。
搭載メモリとスワップサイズは、次のコマンドで調べられます。MemTotalが搭載メモリで、SwapTotalがスワップです。
$ cat /proc/meminfo
total: used: free: shared: buffers: cached:
Mem: 1052545024 1036943360 15601664 179281920 191262720 573591552
Swap: 542826496 32862208 509964288
MemTotal: 1027876 kB
MemFree: 15236 kB
MemShared: 175080 kB
Buffers: 186780 kB
Cached: 543004 kB
SwapCached: 17144 kB
Active: 587336 kB
Inact_dirty: 326404 kB
Inact_clean: 8268 kB
Inact_target: 256936 kB
HighTotal: 131008 kB
HighFree: 11524 kB
LowTotal: 896868 kB
LowFree: 3712 kB
SwapTotal: 2030104 kB
SwapFree: 498012 kB
BigPagesFree: 0 kB
|
Oracleをインストールするパーティションにハードウェア要件を満たす空きがあることを確認します。
$ df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda5 26G 21G 3.7G 85% /
/dev/sda1 68M 11M 54M 16% /boot
|
同様に/tmpを含むパーティションに400MB以上の空きがあることを確認します。空きがないときには、TEMP環境変数を使って回避できます。
$ df -h /tmp
Filesystem Size Used Avail Use% Mounted on
/dev/sda5 26G 21G 3.7G 85% /
|
- ソフトウェア要件の確認
MIRACLE LINUX V4.0 に Oracle9i Database をインストールするには、MIRACLE LINUX V4.0のインストール時に、インストールの種類で「すべて」を選択することが必要です。
カスタム・インストールを選択した場合には、必須パッケージがすべてインストールされていない場合があります。その場合には、以下の例のように逐次不足しているパッケージを追加インストールします。(CDのデバイス名はシステムに接続された機器の種類により変わりますので、 /etc/fstabの内容を参照してください。)
(例)
# mount /mnt/cdrom
# cd /mnt/cdrom/Asianux/RPMS
# rpm -ivh rpmパッケージファイル名
|
- カーネルパラメータの設定
MIRACLE LINUXのカーネルパラメータはOracleに最適化されています。そのため特に変更する必要はありません。
カーネルパラメータを確認するには/etc/sysctl.confファイルを参照して下さい。
設定ファイルを変更した場合には、「sysctl -p」で、設定した値を動的に有効にします。
- シェル制限の設定
シェル制限とは、ユーザーごとの最大プロセス数や最大オープンファイル数など、ユーザーごとに設定する制限値です。MIRACLE LINUX V4.0では、シェル制限はあらかじめ設定されています。/etc/security/limits.confに、次の内容が設定されていることを確認してください。
hardはrootユーザーが変更できる上限値のリミット、softは一般ユーザーが変更できる上限値のリミットです。
# vi /etc/security/limits.conf
* hard nproc 16384
* soft nofile 2048
* hard nofile 65536
|
- MIRACLE LINUX V4.0固有の環境設定
MIRACLE LINUX V4.0にOracle9iをインストールするためには、gccのバージョンを2.96に変更する作業が必要です。この作業は、oracle9i_supportパッケージを使用するか、またはOracleのPatch#3006854を使用して行うことができます。ここでは、両方の方法について説明します。
oracle9i_supportを使用する場合
oracle9i_supportは、Patch#3006854と同等の効果を持つRPMパッケージです。このRPMを使用すると、9.2.0.4のメディアを使用するときに限り、追加のパッチが無くてもOracle9iをインストールできます。
- oracle9i_supportはデフォルトではインストールされません。MIRACLE LINUXのインストールCDからインストールします。
# rpm -ivh /mnt/cdrom/Asianux/RPMS/oracle9i_support-1.0-2AX.i386.rpm
|
- gccのバージョンを2.96に変更します。oracle9i_supportに含まれるchgcc.shコマンドを使用すると簡単に変更できます。
元のバージョンに戻すときには、次のように指定します。
- hostnameコマンドを実行したとき、ドメイン名がついた完全なホスト名(FQDN)が返ることを確認します。FQDN以外のときには/etc/sysconfig/networkを修正してください。
# hostname
sample.doamine.name
|
Patch#3006854を使用する場合
- gccのバージョンを2.96に変更します。
# mv /usr/bin/gcc /usr/bin/gcc343
# mv /usr/bin/g++ /usr/bin/g++343
# ln -s /usr/bin/gcc296 /usr/bin/gcc
# ln -s /usr/bin/g++296 /usr/bin/g++
|
もし、元のバージョンに戻すときには、次のように入力します。
# rm /usr/bin/gcc
# rm /usr/bin/g++
# mv /usr/bin/gcc343 /usr/bin/gcc
# mv /usr/bin/g++343 /usr/bin/g++
|
- hostnameコマンドを実行したとき、ドメイン名がついた完全なホスト名(FQDN)が返ることを確認します。FQDN以外のときには/etc/sysconfig/networkを修正してください。
# hostname
sample.doamine.name
|
- Patch#3006854を解凍します。これ以外のパッチもすべて同じディレクトリにコピーしてください。「Oracle9i Database Release 2 (9.2.0) JP Update CD」をお持ちの場合、rhel3ディレクトリにパッチは収録されています。
# mkdir /tmp/9ipatches
# cp <元のディレクトリ>p3006854_9204_LINUX.zip /tmp/9ipatches
# cd /tmp/9ipatches
# unzip p3006854_9204_LINUX.zip
Archive: p3006854_9204_LINUX.zip
creating: 3006854/
inflating: 3006854/rhel3_pre_install.sh
inflating: 3006854/README.txt
|
- rootユーザーでPatch#3006854を適用します。
# cd 3006854
# sh rhel3_pre_install.sh
|
- インストールユーザーおよびグループの作成
このセクションではOracleオーナーとなるユーザーおよびグループを作成します。今回は次の条件でインストールします。
項目 | 値 |
Oracleオーナー | oracle |
Oracleインストール用グループ | oinstall |
Oracle管理者用グループ | dba |
グローバルデータベース名 | orcl |
Oracleのインストール先 | /opt/app/oracle |
データベースの作成先 | /opt/app/oracle/oradata |
インストール用ユーザーグループ「oinstall」と管理者用グループ「dba」を作成します。
# groupadd oinstall
# groupadd dba
|
oracleユーザーを作成します。作成したらパスワードも設定します。
# useradd -g oinstall -G dba oracle
# passwd oracle
Changing password for user oracle
New password:<ここにパスワードを入力>
Retype new password:<同じパスワードを入力>
passwd: all authentication tokens updated successfully
|
- インストール先ディレクトリの作成
Oracleのインストール先ディレクトリを作成します。今回はORACLE_BASEを/opt/app/oracleとしていますが、/u01/app/oracleや/opt/oracleなどでも構いません。
# mkdir -p /opt/app/oracle
# chown oracle:oinstall /opt/app/oracle
# chmod 775 /opt/app/oracle
|
- 環境変数の設定
これまではrootユーザーで作業してきましたが、ここからはoracleユーザーの作業が中心になります。rootユーザーとはコマンドプロンプトが違うので注意してください。rootユーザーは"#"で、一般ユーザーは"$"です。
Oracle9i Databaseに必要な環境変数をoracleユーザーに設定します。
$ cd
$ vi .bash_profile
export ORACLE_BASE=/opt/app/oracle
export ORACLE_HOME=/opt/app/oracle/product/9.2.0/db_1
export ORACLE_SID=orcl
ulimit -n 65536 >/dev/null 2>&1
ulimit -u 16384 >/dev/null 2>&1
|
ORACLE_HOMEに指定したディレクトリには、以前インストールしたOracleソフトウェアが存在しないことを確認してください。ORACLE_SIDは、インストール中にデータベースを作成する場合に設定してください。
設定した値を有効にします。
以下2つの問題は、インストーラ使用時に発生する問題に関する対処方法です。インストーラ使用時には、それぞれの環境変数を設定するようにしてください。
- インストール作業の後半で実行されるDBCAやNETCAなどのJava系のアプリケーションが起動できない場合があります。これを回避するため、インストーラ使用時には以下のように環境変数LD_ASSUME_KERNELを設定してください。
$ export LD_ASSUME_KERNEL=2.4.19
|
- インストール中にデータベースを作成するときには、データベースアカウントのパスワードの入力が求められますが、デフォルトの日本語入力メソッドを使用していると、パスワード入力ができない問題が発生します。これを回避するために、環境変数XMODIFIERSを設定してください。
環境変数LANGの設定がja_JP.UTF-8の場合、dbcaやnetcaの画面上で入力出来ない場合があります。この問題を
回避するには環境変数 LANG の設定を"C"または、"ja_JP.EUCjp"に変更します。(ja_JP.EUCjpの場合、一部ウィンドウ枠内で文字化けが発生します。KROWN#112949参照)
$ export LANG=ja_JP.EUCjp
|
[注意]ssh経由で接続したときのエラー
ssh経由で一般ユーザとして接続すると、次のエラーが発生することがあります。
bash: ulimit: cannot modify limit: Operation not permitted
この原因は、ssh接続時に、/etc/security/limits.confの設定は反映されないからです。sshではセキュリティ確保のため、ssh経由で接続したプロセスに対し、そのユーザーが本来持っている権限以上の変更はできません。
ssh経由でも/etc/security/limits.confの設定を有効にしたいときには、sshdの設定ファイルに次の1行を追加します。
# vi /etc/ssh/sshd_config
UsePrivilegeSeparation no
sshdデーモンを再起動します。
# service sshd restart
ただし、この設定はセキュリティホールにつながる可能性があります。外部からアクセスできるサーバーには絶対に設定しないでください。
|
- Oracle9i Databaseのインストール
Oracle9i Databaseのインストールのインストールを開始します。oracleユーザーでログインしてX-Windowsを起動します。インストール時には、rootユーザーも使用するので、ターミナルを2つ起動して、1つをrootユーザーにします。
Oracle9i DatabaseのCD-ROMをドライブにセットしてマウントします。
ここからはoracleユーザーの作業です。ハードウェア要件の確認で、/tmpの空き容量が少ないときには、十分に空きのあるディレクトリを環境変数TEMP,TMPDIRに指定します。
$ mkdir /opt/app/oracle/tmp
$ export TEMP=/opt/app/oracle/tmp
$ export TMPDIR=/opt/app/oracle/tmp
|
ORACLE_HOMEに以前のoracleソフトウェアがないこと、またTNS_ADMINなどが設定されていないことを確認します。TNS_ADMINが設定されているときはunsetします。
$ echo $ORACLE_HOME
$ echo $TNS_ADMIN
TNS_ADMINが設定されているときのみ実行:
$ unset TNS_ADMIN
|
oracleユーザーでインストーラーを起動します。あとは画面の指示に従ってインストールします。詳細はOracleの製品マニュアルをご覧ください。
$ /mnt/cdrom/runInstaller
|
- インストール後の設定
インストールが終わったら画面の指示に従ってroot.shを実行します。それからOracle Universal Installerを終了します。ここではOracle Universal Installer終了後の作業について説明します。
インストール前に設定した環境変数以外の環境変数を設定します。これで自由にSQL*Plusを起動できるようになります。前回よりも後ろの位置に追加してください。その他環境変数についてはインストレーションガイドを参照してください。
$ cd
$ vi .bash_profile
export PATH=$ORACLE_HOME/bin:$PATH
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ORACLE_HOME/lib
|
設定した値を有効にします。これでインストール作業は終了です。あとはマニュアルなどを参考に操作してください。