Hatena::Grouparaistudy

czk-htnの日記

2010-11-26

[] CentOS-5.4 64bit に Oracle 10.2.0.1 をインストール 21:27

この手順ではインストールはまだ成功していません!!

事前準備

Oracleインストール先として5GB(製品: 2GB + DB: 1.5GB + 予備: 1.5GB)ほどのスペースを用意しておく。今回はVMWareを用いたため、新しい仮想ディスクを追加し、/opt としてマウントした。

$ sudo /sbin/mkfs.ext3 /dev/sdc
$ sudo mount /dev/sdc /opt
$ df -k /opt
Filesystem           1K-ブロック    使用   使用可 使用% マウント位置
/dev/sdc               5160576    141444   4756988   3% /opt

次にカーネルパラメータを修正する。いくつかはすでにOracle推奨値より大きかったためコメントアウトする。

/etc/sysctl.conf
# -- for oracle 2010.11.27
#kernel.shmall = 2097152 
#kernel.shmmax = 2147483648
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
fs.file-max = 65536
net.ipv4.ip_local_port_range = 1024 65000
net.core.rmem_default = 262144
net.core.rmem_max = 262144
net.core.wmem_default = 262144
net.core.wmem_max = 262144
# -- for oracle 2010.11.27
/etc/security/limits.conf
# -- for oracle 2010.11.27
oracle           soft    nproc   2047
oracle           hard    nproc   16384
oracle           soft    nofile  1024
oracle           hard    nofile  65536
# -- for oracle 2010.11.27
/etc/pam.d/login
# -- for oracle 2010.11.27
session    required     pam_limits.so
# -- for oracle 2010.11.27
/etc/profile
# -- for oracle 2010.11.27
if [ $USER = "oracle" ]; then
        if [ $SHELL = "/bin/ksh" ]; then
              ulimit -p 16384
              ulimit -n 65536
        else  
              ulimit -u 16384 -n 65536
        fi
fi
# -- for oracle 2010.11.27

/opt/oracle ディレクトリ作成

どこにインストールしてもいいんだけど /opt/oracle が一般的かも。オーナーやパーミッションも変えておく。

$ sudo /usr/sbin/groupadd oinstall
$ sudo /usr/sbin/groupadd dba
$ sudo /usr/sbin/useradd -g oinstall -G dba oracle
$ sudo passwd oracle
$ sudo mkdir -p /opt/oracle
$ sudo chown oracle:dba /opt/oracle

ファイル入手

Oracle Database Software Downloads | Oracle Technology Network | Oracle

ときたまダウンロードに失敗してファイルが破損している場合もあるので、ちゃんとcksumを確かめること。

$ cksum 10201_database_linux_x86_64.cpio.gz 
2921604215 758433170 10201_database_linux_x86_64.cpio.gz
$ cksum 10201_companion_linux_x86_64.cpio.gz 
2134485797 736828852 10201_companion_linux_x86_64.cpio.gz

ファイル展開

$ cd /tmp
$ gunzip -cd 10201_database_linux_x86_64.cpio.gz | cpio -idmv
$ gunzip -cd 10201_companion_linux_x86_64.cpio.gz | cpio -idmv

gcc、libXpインストール

そのまま runInstaller すると libXp.so.6 が見つからないというエラーになるので、yumを使ってライブラリインストールする。またインストーラのチェックでgccも求められるので追加しておく。

glibc-develはインストールの途中でmakeが失敗するため。ログをみると下記のようなメッセージがでている。これはglibc-develをインストールすれば解決する。

/usr/bin/ld: crt1.o: No such file: No such file or directory
$ sudo yum install libXp
$ sudo yum install gcc
$ sudo yum install glibc-devel

インストール

$ cat /proc/version 
Linux version 2.6.18-164.11.1.el5 (mockbuild@builder10.centos.org) (gcc version 4.1.2 20080704 (Red Hat 4.1.2-46)) #1 SMP Wed Jan 20 07:32:21 EST 2010

CentOSメディアからインストールした状態だとバージョンをこのように返す。OracleInstallerは"redhat-4"として扱うので処理は継続される。更新を適用するとOSチェックで引っかかりインストーラが起動しないので注意。その場合は -ignoreSysPrereqs オプションをつけて無理矢理インストールすることになる。


$ su - oracle
$ cd /tmp/database
$ ./runInstaller -ignoreSysPrereqs

結果

インストーラの途中で以下のようなエラーがでて失敗する。解決するにはoratoolが必要になりそうなので、次回はそちらを試してみる。

lxu4dec.c:(.text+0x18b): undefined reference to `lxujmd'
トラックバック - http://araistudy.g.hatena.ne.jp/czk-htn/20101126