トップ   編集 凍結解除 差分 バックアップ 添付 複製 名前変更 リロード   一覧 最終更新   ヘルプ   最終更新のRSS
 


動作確認ディストリビューション

Oracle 11g Release 2のインストール(レスポンスファイルを利用したCUIでのインストール)

通常、Oracleのインストールは、8i以降、Javaで作られているUniversal Installerを起動し、GUIベースのインストールとなっています。
しかし、サーバ環境によってはGUIがインストールされていなかったり、GUIがインストールされていても、
リモート接続ではSSHのポートしか開放されていないなど、状況によってはCUIのみが利用可能ということも多々あります。
そこで、ここではレスポンスファイルを利用したOracleのCUIインストールの方法を説明します。

以下のメモリサイズを参考にして足りなければ増設する。

使用可能なRAM必要なスワップ領域
1GB〜2GBRAMのサイズの1.5倍
2GB〜16GBRAMのサイズと同じ
16GB超16GB


メモリサイズの確認

# grep SwapTotal /proc/meminfo
SwapTotal:     4192956 kB

スワップサイズの確認

# grep SwapTotal /proc/meminfo
SwapTotal:     4192956 kB

クイック・インストレーション・ガイド」に記載されている「パッケージ要件」を参考に、追加でパッケージをインストールします。

# yum -y install \
>  compat-libstdc++-33 \
>  elfutils-libelf-devel \
>  elfutils-libelf-devel-static \
>  gcc \
>  gcc-c++ \
>  glibc-devel \
>  glibc-headers \
>  kernel-headers \
>  libaio-devel \
>  libgomp \
>  libstdc++-devel \
>  sysstat

グループ追加

# groupadd oinstall <= Oracleインベントリ・グループ
# groupadd dba <= OSDBAグループ
# groupadd oracle <= Oracleソフトウェア所有者
# groupadd oper <= OSOPERグループ

ユーザ追加

# useradd -g oinstall -G dba,oper oracle

追加確認

# id oracle
uid=500(oracle) gid=500(oinstall) 所属グループ=500(oinstall),501(dba),503(oper)

oraInst.locファイルの作成

# cd /etc
# vi oraInst.loc

inventory_loc=/opt/oracle/oraInventory
inst_group=oinstall
# chown oracle:oinstall oraInst.loc
# chmod 664 oraInst.loc
# ll oraInst.loc
-rw-rw-r-- 1 oracle oinstall 59 12月 24 11:24 oraInst.loc

インストールディレクトリの作成

# mkdir -p /opt/oracle/oradata
# chown -R oracle:oinstall /opt/oracle
# chmod -R 755 /opt/oracle
# ll /opt
合計 4
drwxr-xr-x 3 oracle oinstall 4096 12月 24 11:29 oracle

インストールディスクのコピー

# mkdir /usr/local/src/oracle <= インストールが終わったら削除する
# cd /usr/local/src/oracle
# cp -fr /media/マイディスク/* . 
# chown -R oracle:oinstall /usr/local/src/oracle
# chmod -R 755 /usr/local/src/oracle

サイレントインストール(CUIインストール)に利用するレスポンスファイルのコピー

# cp /usr/local/src/oracle/response/*.rsp /tmp
# chmod 666 /tmp/*.rsp
# ll /tmp/*.rsp
-rw-rw-rw- 1 root root 22557 12月 24 11:38 /tmp/db_install.rsp
-rw-rw-rw- 1 root root 44969 12月 24 11:38 /tmp/dbca.rsp
-rw-rw-rw- 1 root root  5740 12月 24 11:38 /tmp/netca.rsp

レスポンスファイルの修正
レスポンスファイルの記述例は、インストールマニュアルにも記載がなく、
GUIモードのインストール時に「レスポンスファイルの保存」というのができるので、これを参考にせよ。
と、Oracleのサイト内に記載があります。
今回は、このサイトの記載例を参考に、レスポンスファイルを作成しました。

# vi /tmp/db_install.rsp

oracle.install.option=
↓↓↓↓↓↓
oracle.install.option=INSTALL_DB_AND_CONFIG

ORACLE_HOSTNAME=
↓↓↓↓↓↓
ORACLE_HOSTNAME=localhost.localdomain

UNIX_GROUP_NAME=
↓↓↓↓↓↓
UNIX_GROUP_NAME=oinstall

INVENTORY_LOCATION=
↓↓↓↓↓↓
INVENTORY_LOCATION=/opt/oracle/oraInventory

SELECTED_LANGUAGES=
↓↓↓↓↓↓
SELECTED_LANGUAGES=ja,en

ORACLE_HOME=
↓↓↓↓↓↓
ORACLE_HOME=/opt/oracle/product/11.2

ORACLE_BASE=
↓↓↓↓↓↓
ORACLE_BASE=/opt/oracle

oracle.install.db.InstallEdition=
↓↓↓↓↓↓
oracle.install.db.InstallEdition=SE

oracle.install.db.DBA_GROUP=
↓↓↓↓↓↓
oracle.install.db.DBA_GROUP=dba

oracle.install.db.OPER_GROUP=
↓↓↓↓↓↓
oracle.install.db.OPER_GROUP=oper

oracle.install.db.config.starterdb.type=
↓↓↓↓↓↓
oracle.install.db.config.starterdb.type=GENERAL_PURPOSE

oracle.install.db.config.starterdb.globalDBName=
↓↓↓↓↓↓
oracle.install.db.config.starterdb.globalDBName=orcl.localdomain

oracle.install.db.config.starterdb.SID=
↓↓↓↓↓↓
oracle.install.db.config.starterdb.SID=orcl

oracle.install.db.config.starterdb.memoryLimit=
↓↓↓↓↓↓
oracle.install.db.config.starterdb.memoryLimit=512

oracle.install.db.config.starterdb.password.SYS=
↓↓↓↓↓↓
oracle.install.db.config.starterdb.password.SYS=任意のパスワードを設定

oracle.install.db.config.starterdb.password.SYSTEM=
↓↓↓↓↓↓
oracle.install.db.config.starterdb.password.SYSTEM=任意のパスワードを設定

oracle.install.db.config.starterdb.password.SYSMAN=
↓↓↓↓↓↓
oracle.install.db.config.starterdb.password.SYSMAN=任意のパスワードを設定

oracle.install.db.config.starterdb.password.DBSNMP=
↓↓↓↓↓↓
oracle.install.db.config.starterdb.password.DBSNMP=任意のパスワードを設定

oracle.install.db.config.starterdb.storageType=
↓↓↓↓↓↓
oracle.install.db.config.starterdb.storageType=FILE_SYSTEM_STORAGE

oracle.install.db.config.starterdb.fileSystemStorage.dataLocation=
↓↓↓↓↓↓
oracle.install.db.config.starterdb.fileSystemStorage.dataLocation=/opt/oracle/oradata

SECURITY_UPDATES_VIA_MYORACLESUPPORT=
↓↓↓↓↓↓
SECURITY_UPDATES_VIA_MYORACLESUPPORT=false

DECLINE_SECURITY_UPDATES=
↓↓↓↓↓↓
DECLINE_SECURITY_UPDATES=true

インストール

# su - oracle
$ cd /usr/local/src/oracle
$ export ORACLE_BASE=/opt/oracle
$ export ORACLE_HOME=/opt/oracle/product/11.2
$ env |grep ORACLE_
ORACLE_BASE=/opt/oracle
ORACLE_HOME=/opt/oracle/product/11.2
$ ./runInstaller -silent -responseFile /tmp/db_install.rsp 
(※いくつかWaningレベルのメッセージが表示されますが、問題ないようです。)
Oracle Universal Installerを起動中です...
 
・
・
省略
・
・

 #!/bin/sh 
 #実行するrootスクリプト

/opt/oracle/product/11.2/root.sh
構成スクリプトを実行するには、次のようにします:
         1. ターミナル・ウィンドウを開きます
         2. rootとしてログインします
         3. スクリプトを実行します
         4. このウィンドウに戻り、[Enter]キーを押して続行します

Successfully Setup Software.

上記のメッセージが表示されるので、別のターミナルを起動し、指示に従いrootユーザで以下のように「root.sh」を実行し、
上記のターミナルに戻り、Enterを押下することで、セットアップはほぼ完了です。

# sh /opt/oracle/product/11.2/root.sh
Check /opt/oracle/product/11.2/install/root_インストールしたサーバのアドレス_2010-12-24_12-11-45.log 
for the output of root script

処理結果の確認
# cat /opt/oracle/product/11.2/install/root_インストールしたサーバのアドレス_2010-12-24_12-11-45.log
Running Oracle 11g root.sh script...

The following environment variables are set as:
    ORACLE_OWNER= oracle
    ORACLE_HOME=  /opt/oracle/product/11.2

Creating /etc/oratab file...
Entries will be added to the /etc/oratab file as needed by
Database Configuration Assistant when a database is created
Finished running generic part of root.sh script.
Now product-specific root actions will be performed.
Finished product-specific root actions.

oratabの内容確認
# cat /etc/oratab
orcl:/opt/oracle/product/11.2:N <= 自動起動させるためには「:Y」に修正する必要あり

不要ディレクトリの削除

# rm -fr /usr/local/src/oracle

oracleユーザの環境変数の設定

# su - oracle
$ vi ~/.bash_profile

以下を追記
export ORACLE_BASE=/opt/oracle
export ORACLE_HOME=$ORACLE_BASE/product/11.2
export ORACLE_SID=orcl
export PATH=$PATH:$ORACLE_HOME/bin
export LD_LIBRARY_PATH=$ORACLE_HOME/lib

Enterprise Managerの起動

# su - oracle
起動確認
$ emctl status dbconsole
Oracle Enterprise Manager 11g Database Control Release 11.2.0.1.0 
Copyright (c) 1996, 2009 Oracle Corporation.  All rights reserved.
https://インストールしたサーバのアドレス:1158/em/console/aboutApplication
Oracle Enterprise Manager 11g is running. <=起動しています
------------------------------------------------------------------
Logs are generated in directory /opt/oracle/product/11.2/インストールしたサーバのアドレス_orcl/sysman/log 

起動方法
$ emctl start dbconsole

停止方法
$ emctl stop dbconsole

リスナーの起動

# su - oracle
$ lsnrctl start
LSNRCTL for Linux: Version 11.2.0.1.0 - Production on 24-DEC-2010 12:23:40

Copyright (c) 1991, 2009, Oracle.  All rights reserved.

TNS-01106: Listener using listener name LISTENER has already been started

Enterprise Managerのポート番号の確認

$ cat /opt/oracle/product/11.2/install/portlist.ini
Enterprise ManagerコンソールのHTTPポート(orcl) = 1158
Enterprise Managerエージェントのポート(orcl) = 3938

以下のURLにアクセス
https://インストールしたサーバのアドレス:1158/em/console/aboutApplication
※10gと11gではメニューが異なるため注意。

ユーザー名:sys
パスワード:oracle.install.db.config.starterdb.password.SYSにて設定したパスワード
接続モード:SYSDBA

Enterprise Managerにログインすると、「アクセシビリティ・モード」が「無効」になっているので、有効化する。

$ vi /opt/oracle/product/11.2/oc4j/j2ee/oc4j_applications/applications/em/em/WEB-INF/uix-config.xml

<accessibility-mode>inaccessible</accessibility-mode>
↓↓↓↓↓↓
<accessibility-mode>accessible</accessibility-mode>

Enterprise Managerの再起動

# su - oracle
$ emctl stop dbconsole
$ emctl start dbconsole
$ netstat -an |grep 1158
tcp        0      0 :::1158                     :::*                        LISTEN

再度、Enterprise Managerにログインして、「アクセシビリティ・モード」が「有効」になっていることを確認。

自動起動設定
「/etc/init.d」に自動起動用スクリプト( &ref(): File not found: "dbora" at page "Oracle/11g/インストール(レスポンスファイルを利用したCUIでのインストール)"; )を作成

# vi /etc/oratab
orcl:/opt/oracle/product/11.2:N
↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓
orcl:/opt/oracle/product/11.2:Y

# chmod 755 /etc/init.d/dbora
# chkconfig --add dbora
# chkconfig dbora on
# chkconfig --list dbora
dbora           0:off   1:off   2:on    3:on    4:on    5:on    6:off

Webアプリケーションはoracle以外のユーザ(apacheユーザなど)でtnsnames.oraファイルを読み込む場合があるので、
tnsnames.oraファイルに参照権限を付与

# chmod 644 /opt/oracle/product/11.2/network/admin/tnsnames.ora

Last-modified: 2011-01-16 (日) 14:16:36 (2894d)