DB/Oracle/11g 環境構築
目次†
Oracle のステキライセンス(開発者ライセンス)により、実験や検証目的では本来有償のモノもダウンロードしてインストールできます。
というわけで、天下の Oracle 様の看板製品であるところの Oracle Database 11g を自宅の Linux 環境(RHEL 6。CentOS でもたぶん一緒)に入れるというお話。
なお、RHEL 6 はサポート対象外っぽいので、もしアレでも我慢しましょう。
参照ドキュメント†
そのものズバリのドキュメントがあるのでそこを参照する。ほかのプラットフォームのインストレーションガイドも探せばある。
要件の確認†
権限†
要 root 権限。su しておく。
メモリ†
最低 4GB。けっこう使うのね。
自動メモリ管理を使う場合は、/dev/shm が MAX_MEMORY_TARGET と MEMORY_TARGET 以上ないといけない。自動共有メモリ管理の場合はこの限りではない。
- /dev/shm の容量の確認
df -h /dev/shm
ディスク†
OS†
RHEL 6 がサポート対象外っぽいのでちょっと困る。勘で進める。
カーネル†
パッケージ†
ドキュメントには RHEL 6 の詳細記述なし。RHEL 5 で必要とされているパッケージを、バージョンを気にせず最新版を放り込んでおく。
- パッケージのインストール
# こんな雑な入れ方でいいのかね yum install binutils compat-libstdc++ gcc gcc-c++ glibc glibc-devel glibc-devel-32bit ksh-93r libaio libaio-32bit libaio-devel libaio-devel-32bit libelf libgcc libstdc++ libstdc++-devel make numactl sysstat unixODBC unixODBC-devel
- OUI の環境チェックで何個かコケた。i386 のパッケージが必要っぽい。要調査
- 無視しても平気っぽいので無視してやってみてる。詳細は後日
環境設定†
OS グループとユーザの準備†
Oracle インベントリグループと DBA グループ、Oracle ソフトウェア所有者のユーザが必要なので追加する。それぞれ標準は oinstall、dba、oracle。
すでにユーザが存在する場合は、所属グループの設定を確認して、必要があれば修正する。
- グループとユーザの追加
# グループの追加 groupadd -r oinstall groupadd -r dba # ユーザの追加 useradd -g oinstall -G dba oracle # パスワードの設定 passwd oracle
カーネルパラメータの設定†
ドキュメンテーションガイドを参照して、適宜必要な値を /etc/sysctl.conf に記述する。
- /etc/sysctl.conf への記述例
# Oracle Database 11g Recomended Values net.core.rmem_max = 4194304 net.core.rmem_default = 262144 net.core.wmem_max = 1048576 net.core.wmem_default = 262144 fs.aio-max-nr = 1048576
記述ができたらカーネルに反映させる。コマンドを実行するか再起動する。
- 設定の反映
sysctl -p
リソース制限の設定†
インストール時に使うユーザ(ここでは oracle)のリソース制限を確認して、必要があれば設定する。
- リソース制限の確認
# ユーザの変更 su - oracle # ファイル記述子数のソフトリミット ulimit -Sn # ファイル記述子数のハードリミット ulimit -Hn # プロセス数のソフトリミット ulimit -Su # プロセス数のハードリミット ulimit -Hu # スタックセグメントサイズのソフトリミット ulimit -Ss # スタックセグメントサイズのハードリミット ulimit -Hs
ドキュメントを確認して設定値が要件を満たしていなければ設定ファイルに記述する。
- /etc/security/limits.conf の記述例
oracle soft nofile 1024 oracle hard nofile 65536 oracle soft nproc 2047 oracle hard stack 32768
ディレクトリの作成†
必要なディレクトリを作成して所有者やらなにやらも正しく変更する。
- ディレクトリの作成
mkdir -p /u01/app chown -R oracle:oinstall /u01/app chmod -R 775 /u01/app
環境の設定†
umask やら環境変数やらをいじる。
- /home/oracle/.bash_profile などに記述
# umask の変更 umask 022 # 環境変数の指定 export ORACLE_BASE=/u01/app/oracle export ORACLE_SID=orcl
インストール†
GUI 環境で行うので要ディスプレイ接続。X を外に飛ばしてもいい(要 DISPLAY 設定)し、VNC でもいい。今回は VNC 環境をすでにつくってあったのでそっちでやる。
VNC 接続して、oracle ユーザでログインしたら、ダウンロードしておいた ZIP ファイルを解凍して、database/runInstaller を実行するだけ。VNC 環境でやったら OUI の日本語が化けたのでひとまず LANG=C 下で実行した。
- OUI の実行
env LANG=C ./runInstaller
あとはウィザードに従う。設定内容は難しくない。
最後に root で実行しなきゃならんスクリプトを 2 つ(root.sh と orainstRoot.sh)指定されるので、それは忘れずに root で実行すること。
Last-modified: 2011-11-24 (木) 00:46:59