Oracle/ORACLE 11g RAC環境構築(旧)

VMwareWorkstation(VMware Playerでも可能と思う) で CentOS 5.10 x64 + Oracle 11gR2 での RAC環境構築になります。


Oracleの入手

バイナリダウンロード先(2014/09/06時点)
http://www.oracle.com/technetwork/database/enterprise-edition/downloads/112010-linx8664soft-100572.html

以下の3ファイルをDL
・linux.x64_11gR2_database_1of2.zip
・linux.x64_11gR2_database_2of2.zip
・linux.x64_11gR2_grid.zip

 

CnetOS5.10のHW構成

デバイス概要
メモリ2GB
プロセッサ2
ハードディスク(SCSI)30GB
NIC1ブリッジ(eth0)
NIC2ホストオンリー(eth1)


 

StarWindで、iSCSI用のDISK作成

ターゲット容量
data13GB
data23GB
fra1GB
fra1GB

※ 作成方法はStorage参照
※ アーカイブログモードを有効にした場合、フラッシュリカバリー領域(fra)のDISKを 2GB以上にしないと容量足りなくなるかも
※ data と fra で分ける必要もなく、1つのみでも大丈夫かもしれない

 

CentOS 5.10 のインストール

以下の要領で2台インストールする
VMWare Toolsもインストールしておくこと(GUIでインストールする際、解像度が足りなくて下の方にあるボタンが選択できない為)

選択するインストールパッケージ

  • デスクトップ環境
    GNOMEデスクトップ環境

  • 開発
    開発ツール
    開発ライブラリ

  • ベースシステム
    X Window System
    ベース

IPアドレスの設定

NICホスト名IPアドレスホスト名IPアドレス
eth0(パブリック)orac1.com192.168.11.21orac2.com192.168.11.22
eth1(プライベート)orac1i.com192.168.100.21orac2i.com192.168.100.22
VIP(仮想NIC)orac1v.com192.168.11.31orac2v.com192.168.11.32

パブリックは実際にOracleに接続する際に使用。プライベートはRAC間での通信のみに使用。

ユーザー作成

行わないこと

 

CentOS設定

/etc/hostsの設定

# Physical IP
192.168.11.21	orac1.com	orac1
192.168.11.22	orac2.com	orac2
# RAC-SCAN
192.168.11.23	orac-cluster-scan.com orac-cluster-scan

# Private IP
192.168.100.21	orac1i.com	orac1i
192.168.100.22	orac2i.com	orac2i

# Virtual IP
192.168.11.31	orac1v.com	orac1v
192.168.11.32	orac2v.com	orac2v

追加パッケージのインストール

mount -t iso9660 -r /dev/cdrom /mnt
cd /mnt/CentOS
rpm -ihv compat-libstdc++-33-3.2.3-61.x86_64.rpm
rpm -ihv compat-libstdc++-33-3.2.3-61.i386.rpm
rpm -ihv libaio-devel-0.3.106-5.x86_64.rpm
rpm -ihv libaio-devel-0.3.106-5.i386.rpm
rpm -ihv sysstat-7.0.2-12.el5.x86_64.rpm
rpm -ihv unixODBC-libs-2.2.11-10.el5.i386.rpm
rpm -ihv unixODBC-libs-2.2.11-10.el5.x86_64.rpm
rpm -ihv unixODBC-2.2.11-10.el5.x86_64.rpm
rpm -ihv unixODBC-2.2.11-10.el5.i386.rpm
rpm -ihv unixODBC-devel-2.2.11-10.el5.i386.rpm
rpm -ihv unixODBC-devel-2.2.11-10.el5.x86_64.rpm
rpm -ihv pdksh-5.2.14-37.el5_8.1.x86_64.rpm

ユーザーとグループ作成

groupadd -g 501 oinstall
groupadd -g 502 dba
groupadd -g 503 oper
groupadd -g 504 asmadmin
groupadd -g 505 asmdba
groupadd -g 506 asmoper
useradd -u 501 -g oinstall -G asmdba,asmoper,asmadmin grid
passwd grid
useradd -u 502 -g oinstall -G dba,asmdba oracle
passwd oracle

ディレクトリ作成

mkdir -p /u01/app/oracle
mkdir -p /u01/app/oracle/oradata
mkdir -p /u01/app/oracle/fast_recovery_area
chown -R oracle /u01
mkdir -p /u01/app/grid
chown oracle /u01/app/grid
mkdir -p /u01/app/11.2.0/grid
chown -R oracle /u01/app/11.2.0
mkdir -p /u01/app/oraInventory
chown oracle /u01/app/oraInventory
chgrp -R oinstall /u01
chmod -R 775 /u01

/etc/security/limits.conf

oracle		soft	nproc		2047
oracle		hard	nproc		16384
oracle		soft	nofile		1024
oracle		hard	nofile		65536
oracle		soft	stack		10240

/etc/sysctl.conf

fs.aio-max-nr = 1048576
fs.file-max = 6815744
kernel.shmall = 4294967296
kernel.shmmax = 68719476736
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
net.ipv4.ip_local_port_range = 9000 65500
net.core.rmem_default = 262144
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 1048576
カーネルパラメータ反映
sysctl -p

NTP設定

chkconfig ntpd on
/etc/sysconfig/ntpd
※以下の通り変更
OPTIONS="-u ntp:ntp -p /var/run/ntpd.pid"
   ↓変更
OPTIONS="-x -u ntp:ntp -p /var/run/ntpd.pid"


 

iSCSI DISKのマウント

マウント順番を揃える為に既存のiscsiサービスを停止させておく

chkconfig iscsi off

iSCSIのマウントスクリプトを作成し設定

vi /etc/init.d/iscsic
※以下の内容で保存する(starwindサーバーのIPアドレスが、192.168.11.20 の場合の記述となります。必要に応じてIPアドレスを変更して下さい)
#!/bin/bash
#
# Startup script for the iscsic
# chkconfig: 12345 99 01
# description: iscsi SAN


RETVAL=0

start()
{
    echo -n $"target login $prog: "
    iscsiadm -m node -T iqn.2008-08.com.starwindsoftware:127.0.0.1-data1 -p 192.168.11.20 --login
    iscsiadm -m node -T iqn.2008-08.com.starwindsoftware:127.0.0.1-data2 -p 192.168.11.20 --login
    iscsiadm -m node -T iqn.2008-08.com.starwindsoftware:127.0.0.1-fra1 -p 192.168.11.20 --login
    iscsiadm -m node -T iqn.2008-08.com.starwindsoftware:127.0.0.1-fra2 -p 192.168.11.20 --login
    echo
}

stop()
{
    echo -n $"logout $prog: "
    iscsiadm -m discovery -t sendtargets -p 192.168.11.20 | awk '{print $2}' > /tmp/iscsi_tmp.cmd

    while read line
    do
        iscsiadm -m node -T $line --logout
    done < /tmp/iscsi_tmp.cmd
    /etc/init.d/rawdevices stop

    echo
}

status()
{
    iscsiadm -m session
    echo
}


case "$1" in
    start)
            start
            ;;
    stop)
            stop
            ;;
    restart)
            stop
            start
            ;;
    status)
            status
            ;;
    *)
            echo $"Usage: $0 {start|stop|restart|status}"
            RETVAL=1
esac
exit $RETVAL

サービスに登録する

chmod 755 iscsic
chkconfig --add iscsic
service iscsic start

DISKの初期化

fdisk /dev/sdb
n ⇒ p ⇒ 1 ⇒ Enter x 2回 ⇒ w の順番で/dev/sdb〜sdeまで実行する
※DB1号機のみでOK

/etc/udev/rules.d/60-raw.rules

ACTION=="add", KERNEL=="sdb1", RUN+="/bin/raw /dev/raw/raw1 %N"
ACTION=="add", KERNEL=="sdc1", RUN+="/bin/raw /dev/raw/raw2 %N"
ACTION=="add", KERNEL=="sdd1", RUN+="/bin/raw /dev/raw/raw3 %N"
ACTION=="add", KERNEL=="sde1", RUN+="/bin/raw /dev/raw/raw4 %N"

/etc/udev/rules.d/61-raw-permission.rules

KERNEL=="raw1", MODE="0640", OWNER="oracle", GROUP="oinstall"
KERNEL=="raw2", MODE="0640", OWNER="oracle", GROUP="oinstall"
KERNEL=="raw3", MODE="0660", OWNER="oracle", GROUP="dba"
KERNEL=="raw4", MODE="0660", OWNER="oracle", GROUP="dba"

ここで一旦OSをリブートさせる。

DISK初期化

fdisk -l
dd if=/dev/zero of=/dev/raw/raw1 bs=1024k count=3000
dd if=/dev/zero of=/dev/raw/raw2 bs=1024k count=3000
dd if=/dev/zero of=/dev/raw/raw3 bs=1024k count=1000
dd if=/dev/zero of=/dev/raw/raw4 bs=1024k count=1000


 

Grid Infrastructureのインストール

使用ファイル

linux.x64_11gR2_grid.zip

インストールの実行

oracleユーザーでGUIログインし、linux.x64_11gR2_grid.zip 解凍後 ./runInstaller を実行する

  • インストール・オプション
    クラスタ用のGrid Infrastructureのインストールおよび構成
  • インストールタイプ
    拡張インストール
  • Gridプラグ・アンド・プレイ設定
    クラスタ名:orac-cluster
    SCAN名  :orac-cluster-scan
    SCANポート:1521
    ※GNSの構成のチェックを外す
  • クラスタ・ノード編集
    パブリックホスト  仮想ホスト名
    orac1.com      orac1v.com
    orac2.com      orac2v.com
    「SSH接続」をクリック、Oracleユーザーのパスワードを入力し「設定」
    ※テスト接続に成功したら次へ

  • ネットワーク・インターフェース
    192.168.11.0 パブリック
    192.168.100.0 プライベート
  • 記憶域オプションの情報
    Oracle自動ストレージ管理(OracleASM)
  • ASMディスク・グループの作成
    ディスク・グループ名:DATA
    冗長性       :外部
    AUサイズ      :1MB
    候補ディスク    :5GBのRAWデバイス2つを選択する
  • ASMパスワードの設定
    パスワード、同じパスワード使用
    ? の moreを開くと、入力可能になる
  • 障害の分散のサポート
    IPMIは使用しない
  • 権限付きオペレーティング・システム・グループ
    システムグループは デフォルトのまま(多分以下になる)
    asmdba
    oinstall
    oinstall
  • インストール場所の指定
    Oracleベース:/u01/app/grid
    ソフトウェア:/u01/app/11.2.0/grid
    ※Oracle Cluster Verificationで失敗するが無視する。

     

FRAディスク追加

ASMCAの起動

/u01/app/11.2.0/grid/bin/asmca
※ディスクグループタブで、新規作成する


 

CentOSのユーザー環境定義

  • /root/.bash_profile
  • /home/grid/.bash_profile
    export GRID_BASE=/u01/app/grid
    export GRID_HOME=/u01/app/11.2.0/grid
    export PATH=$PATH:$GRID_HOME/bin
  • /home/oracle/.bash_profile
    export ORACLE_BASE=/u01/app/oracle
    export ORACLE_HOME=/u01/app/oracle/product/11.2.0/dbhome_1
    export ORACLE_SID=orcl
    export ORACLE_UNQNAME=orcl
    export PATH=$PATH:$ORACLE_HOME/bin
    export NLS_LANG=JAPANESE_JAPAN.AL32UTF8
    ※DBインストール後に設定してたがここで設定しても問題ないと思う

     

データベースソフトウェアインストール

使用ファイル

linux.x64_11gR2_database_1of2.zip
linux.x64_11gR2_database_2of2.zip

インストール実行

oracleユーザーでGUIログインし、./runInstaller を実行する。

  • セキュリティ・アップデートの作成
    ・電子メールは空
    ・以下のチェックを外す
     セキュリティ・アップデートをMy Oracle Support経由で受け取ります
  • インストール・オプションの選択
    データベースソフトウェアのみインストール
  • Gridインストール・オプション
    Oracle Real Aplication Clustersデータベースのインストール を選択
    ノードは、すべて選択
    「SSH接続」で接続することを確認する
  • データベース・エディション
    Enterprise Edition
  • インストール場所の指定
    Oracleベース    /u01/app/oracle
    ソフトウェアの場所 /u01/app/oracle/product/11.2.0/dbhome_1

     

データベースの作成作成

DBCA起動

oracleユーザーでGUIログインし実行

/u01/app/oracle/product/11.2.0/dbhome_1/bin/dbca
  • ようこそ
    Oracle Real Application Clustersデーターベース
  • 操作
    データーベースの作成
  • データベース識別子
    構成タイプ:管理者管理型
    GDB    :orcl
    SID    :orcl
    クラスタ :すべて選択
  • データベースファイルの位置
    Oracle Managed Filesの使用
    └ データベース領域 +DATA
  • 管理オプション
    EnterPriseの構成 にチェック
  • データベース・ファイルの位置
    Oracle Managed Filesの使用
    +DATA を選択
    ※パスワードは、GRIDインストール時に設定したものを入力
  • リカバリ構成
    アーカイブ化有効
    領域 +FRA
  • 初期化パラメータ
    データベース・キャラクタ・セット Unicodeを選択
    ※Enterprise Managerの起動時にエラーが発生した旨のメッセージが表示されても問題ない
     

動作確認

# crs_stat -t
Name           Type           Target    State     Host
------------------------------------------------------------
ora.DATA.dg    ora....up.type ONLINE    ONLINE    orac1
ora.FRA.dg     ora....up.type ONLINE    ONLINE    orac1
ora....ER.lsnr ora....er.type ONLINE    ONLINE    orac1
ora....N1.lsnr ora....er.type ONLINE    ONLINE    orac1
ora.asm        ora.asm.type   ONLINE    ONLINE    orac1
ora.eons       ora.eons.type  ONLINE    ONLINE    orac1
ora.gsd        ora.gsd.type   OFFLINE   OFFLINE
ora....network ora....rk.type ONLINE    ONLINE    orac1
ora.oc4j       ora.oc4j.type  OFFLINE   OFFLINE
ora.ons        ora.ons.type   ONLINE    ONLINE    orac1
ora....SM1.asm application    ONLINE    ONLINE    orac1
ora....C1.lsnr application    ONLINE    ONLINE    orac1
ora.orac1.gsd  application    OFFLINE   OFFLINE
ora.orac1.ons  application    ONLINE    ONLINE    orac1
ora.orac1.vip  ora....t1.type ONLINE    ONLINE    orac1
ora....SM2.asm application    ONLINE    ONLINE    orac2
ora....C2.lsnr application    ONLINE    ONLINE    orac2
ora.orac2.gsd  application    OFFLINE   OFFLINE
ora.orac2.ons  application    ONLINE    ONLINE    orac2
ora.orac2.vip  ora....t1.type ONLINE    ONLINE    orac2
ora.orcl.db    ora....se.type ONLINE    ONLINE    orac1
ora.scan1.vip  ora....ip.type ONLINE    ONLINE    orac1
$ sqlplus sys/<DB設定時のパス>@orcl as sysdb
SQL> select instance_name,status from v$instance;
$ emctl start dbconsole
EMへのログインは、 sys / <DB設定時のパス> SYSDBA権限
ASMへのログインは、sys / <ASM設定時のパス> ASMDBA権限

DEFAULTプロファイルのパスワード期限を無期限にする

11gから有効期限が180日で設定されるようになってるため、変更しないと色々面倒。

ALTER PROFILE "DEFAULT" LIMIT PASSWORD_LIFE_TIME UNLIMITED PASSWORD_GRACE_TIME UNLIMITED;

トップ   編集 凍結解除 差分 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2015-09-08 (火) 16:57:32 (1880d)