Oracle/ORACLE 12c RAC環境構築

VMwareWorkstation(VMware Playerでも可能と思う) で CentOS 6.7 x64 + Oracle 12cR1

Oracleの入手

バイナリダウンロード先(2015/09/07時点)
http://www.oracle.com/technetwork/jp/database/enterprise-edition/downloads/index.html

以下の4ファイルをDL
・linuxamd64_12102_grid_1of2.zip
・linuxamd64_12102_grid_2of2.zip
・linuxamd64_12102_database_1of2.zip
・linuxamd64_12102_database_2of2.zip

CnetOS6.7のHW構成

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


StarWind

iSCSI用のDISK作成

ターゲット容量ターゲット容量
data10GBfra5GB

※ 作成方法はStorage参照

DNSの作成

役割から「DNS」をインストールし以下の構成でゾーン作成する

作成説明
前方参照ゾーン名前:zone.com、IPアドレスはゲートウェイのアドレス
逆引き参照ゾーン11.168.192.in-addr.arpaと、100.168.192.in-addr.arpa
rac12c1192.168.11.41
rac12c2192.168.11.42
rac12c1-vip192.168.11.31
rac12c2-vip192.168.11.32
rac12c1-prv192.168.100.41
rac12c2-prv192.168.100.42
rac12c-srv192.168.11.43
  • 前方参照ゾーンから、新しいホストを追加する際、「関連付けられたポインタレコートを作成する」にチェックを入れることで同時に逆引き参照ゾーンも登録される
  • CentOSでDNSを構築する場合はこちらを参照して作成する。
  • DNS作成しなくても hosts で名前解決出来れば大丈夫かも(前提チェックで/etc/resolv.conf整合性エラー出ても無視で)
     

CentOS 6.7 のインストール

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

  • desctop 今すぐカスタマイズにチェックを入れて、次へ進む
  • ベースシステム - iSCSI
  • 開発 - 開発ツール

ネットワーク設定

/etc/sysconfig/network-scripts/ifcfg-eth0

ONBOOT=yes
NM_CONTROLLED=yes
BOOTPROTO=static
IPADDR=192.168.11.41
NETMASK=255.255.255.0
DNS1=192.168.11.40
DOMAIN=zone.com

※ DNS1 は DNSサーバーを指定
※ DOMAINは、DNSで名前解決させる為のゾーン

/etc/sysconfig/network-scripts/ifcfg-eth1

ONBOOT=yes
NM_CONTROLLED=yes
BOOTPROTO=static
IPADDR=192.168.100.41
NETMASK=255.255.255.0

/etc/sysconfig/network

echo "NOZEROCONF=yes" >> /etc/sysconfig/network

/etc/hosts

# Local
127.0.0.1       localhost.zone.com localhost
# Physical IP
192.168.11.41   rac12c1.zone.com rac12c1
192.168.11.42   rac12c2.zone.com rac12c2
# RAC-SCAN
192.168.11.43   rac12c-srv.zone.com rac12c-srv
# Private IP
192.168.100.41  rac12c1i.zone.com rac12c1-prv
192.168.100.42  rac12c2i.zone.com rac12c2-prv
# Virtual IP
192.168.11.31   rac12c1-vip.zone.com rac12c1-vip
192.168.11.32   rac12c2-vip.zone.com rac12c2-vip

ネットワークを再起動

/etc/init.d/network restart

名前解決の確認

host rac12c1
host rac12c2
host rac12c1-vip
host rac12c2-vip
host rac12c-srv
host 192.168.11.31
host 192.168.11.32
host 192.168.11.41
host 192.168.11.42
host 192.168.11.43

セキュリティと不要なサービス無効化

cat /etc/selinux/config | sed -e 's/=enforcing$/=disabled/' > /tmp/tmp; cp /tmp/tmp /etc/selinux/config
/etc/rc.d/init.d/iptables stop
chkconfig iptables off
chkconfig ip6tables off 
chkconfig iscsi off
chkconfig postfix off
chkconfig bluetooth off
chkconfig abrtd off
chkconfig abrt-ccpp off
chkconfig acpid off
chkconfig atd off
chkconfig cups off
chkconfig cpuspeed off
chkconfig netconsole off
chkconfig netfs off

/etc/〜各種設定

/etc/sysconfig/ntpd

cat /etc/sysconfig/ntpd | sed -e 's/OPTIONS=\"-u/OPTIONS=\"-x -u/' > /tmp/tmp; cp /tmp/tmp /etc/sysconfig/ntpd


/etc/fstab

cat /etc/fstab | sed -e 's/tmpfs   defaults/tmpfs   rw,exec,size=2560M/' > /tmp/tmp;cp /tmp/tmp /etc/fstab


/etc/security/limits.conf

grid  hard  nofile  65536
grid  hard  nproc  16384
oracle  hard  memlock  3145728
oracle  hard  nofile  65536
oracle  hard  nproc  16384
oracle  soft  nproc  2047


/etc/sysctl.conf

kernel.sem = 250      32000   100     128
kernel.shmmni = 4096
fs.file-max = 6815744
net.ipv4.ip_local_port_range = 9000   65535
net.core.rmem_default = 262144
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 1048576
fs.aio-max-nr = 1048576
kernel.panic_on_oops = 1
-- 設定反映
sysctl -p

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

mount -t iso9660 -r /dev/cdrom /mnt
cd /mnt/Packages

rpm -ivh compat-libstdc++*.x86_64.rpm
rpm -ivh compat-libcap*.x86_64.rpm
rpm -ivh libaio-devel-*.x86_64.rpm
rpm -ivh unixODBC-*.x86_64.rpm
rpm -ivh ksh-20120801-28.el6.x86_64.rpm

ユーザー と グループ作成

groupadd -g 501 asmdba
groupadd -g 502 asmadmin
groupadd -g 503 oinstall
groupadd -g 504 dba
useradd -g oinstall -G oinstall,asmadmin,asmdba,dba grid
useradd -g oinstall -G dba,asmdba oracle
passwd grid
passwd oracle

ディレクトリ作成

mkdir -p /u01/app/oracle
mkdir -p /u01/app/12.1.0/grid
mkdir /u01/app/grid
mkdir /u01/app/oraInventory
chown -R grid:oinstall /u01
chown oracle:oinstall /u01/app/oracle
chmod -R 775 /u01

環境変数

~oracle/.bash_profile

# ORACLE環境変数の設定
ORACLE_BASE=/u01/app/oracle
ORACLE_HOME=/u01/app/oracle/product/12.1.0/dbhome_1
# ORACLE_SIDは可変
ORACLE_SID=orcl1
NLS_LANG=Japanese_Japan.AL32UTF8
export ORACLE_BASE ORACLE_HOME ORACLE_SID NLS_LANG

# PATHに$ORACLE_HOME/binを追加
export PATH=$PATH:$ORACLE_HOME/bin

~grid/.bash_profile

# 環境変数の設定
ORACLE_BASE=/u01/app/grid
ORACLE_HOME=/u01/app/12.1.0/grid
export ORACLE_BASE ORACLE_HOME
export PATH=$PATH:$ORACLE_HOME/bin

共有ディスクの作成

ターゲットの確認

iscsiadm -m discovery -t sendtargets -p [StarWindowのIP]


iscscのスクリプト作成&登録

cd /etc/init.d/
vi iscsic
#!/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:win-4cmppg80s3q-data -p 192.168.11.40 --login
    iscsiadm -m node -T iqn.2008-08.com.starwindsoftware:win-4cmppg80s3q-fra -p 192.168.11.40 --login
    echo
}

stop()
{
    echo -n $"logout $prog: "
    iscsiadm -m discovery -t sendtargets -p 192.168.11.40 | 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でプライマリパーティション。サイズを指定して作成する
w で保存して終了する
※ fdisk /dev/sdc 〜 e まで繰り返す

/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"

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

KERNEL=="raw1", MODE="0660", OWNER="grid", GROUP="asmadmin"
KERNEL=="raw2", MODE="0660", OWNER="grid", GROUP="asmadmin"

※ ここで一旦OS再起動する

DISKの初期化

dd if=/dev/zero of=/dev/raw/raw1 bs=1024k count=10000
dd if=/dev/zero of=/dev/raw/raw2 bs=1024k count=5000


Grid Install

su - grid
unzip linuxamd64_12102_grid_1of2.zip > /dev/null
unzip linuxamd64_12102_grid_2of2.zip > /dev/null
su -
cd ~grid/grid/rpm
rpm -ivh cvuqdisk-1.0.9-1.rpm
scp cvuqdisk-1.0.9-1.rpm rac12c2:/tmp
exit
cd grid
./runInstaller
  • インストールオプション
    クラスタ用のGrid Infrastructureのインストールおよび構成
  • クラスタ・タイプ
    標準クラスタの構成
  • インストール・タイプ
    拡張インストール
  • 製品言語の選択
    日本語 と 英語
  • Gridプラグ・アンド・プレイの情報
    クラスター名:rac12c-cluster
    SCAN名   :rac12c-srv
    SCANポート :1521
    GNSの構成はチェックを外す
  • クラスタ・ノード情報
    パブリック・ホスト名仮想ホスト名
    rac12c1.zone.comrac12c1-vip.zone.com
    rac12c2.zone.comrac12c2-vip.zone.com
    SSH接続 - 設定 でSSHでのパスワードなしログインを構成する
  • ネットワーク・インターフェースの使用方法の指定
    インターフェース名サブネット用途
    eth0192.168.11.0パブリック
    eth1192.168.100.0ASMおよびプライベート
    ※プライベートで良いかも。「ASMおよびプライベート」にするとクラスタリソースのora.asmに3つの番号が振られる
  • 記憶域オプションの情報  Oracle Flex ASMを記憶域として使用
  • ASMディスク・グループの作成
    検出パスの変更で、/dev/raw* にすればディスクが表示される
    
    ディスクグループ名:DATA
    冗長性      :外部
    ディスクの追加  :/dev/raw/raw1 と /dev/raw/raw2
  • 障害の分離
    IPMIを使用しない
  • 管理オプション
    EM Cloud Controlへの登録 はしない
    EM Cloud Controlで管理(EM Agentインストール済み)の場合はチェックする
  • 権限付き御ペレレーティング・システム・グループ
    OSASM :asmadmin
    OSDBA :asmdba
    OSOPER:ブランク
  • インストール場所の指定
    Oracleベース:/u01/app/grid
    ソフトウェア:/u01/app/12.1.0/grid
  • 前提チェック
    ASMで警告が出るが、無視するにチェックを入れて進める。

インストール後のリソース状況

/u01/app/12.1.0/grid/bin/crsctl stat res -t
--------------------------------------------------------------------------------
Name           Target  State        Server                   State details       
--------------------------------------------------------------------------------
Local Resources
--------------------------------------------------------------------------------
ora.ASMNET1LSNR_ASM.lsnr
               ONLINE  ONLINE       rac12c1                  STABLE
               ONLINE  ONLINE       rac12c2                  STABLE
ora.DATA.dg
               ONLINE  ONLINE       rac12c1                  STABLE
               ONLINE  ONLINE       rac12c2                  STABLE
ora.LISTENER.lsnr
               ONLINE  ONLINE       rac12c1                  STABLE
               ONLINE  ONLINE       rac12c2                  STABLE
ora.net1.network
               ONLINE  ONLINE       rac12c1                  STABLE
               ONLINE  ONLINE       rac12c2                  STABLE
ora.ons
               ONLINE  ONLINE       rac12c1                  STABLE
               ONLINE  ONLINE       rac12c2                  STABLE
--------------------------------------------------------------------------------
Cluster Resources
--------------------------------------------------------------------------------
ora.LISTENER_SCAN1.lsnr
      1        ONLINE  ONLINE       rac12c1                  STABLE
ora.MGMTLSNR
      1        ONLINE  ONLINE       rac12c1                  169.254.21.166 192.1
                                                             68.100.41,STABLE
ora.asm
      1        ONLINE  ONLINE       rac12c1                  Started,STABLE
      2        ONLINE  ONLINE       rac12c2                  Started,STABLE
      3        OFFLINE OFFLINE                               STABLE
ora.cvu
      1        ONLINE  ONLINE       rac12c1                  STABLE
ora.mgmtdb
      1        ONLINE  ONLINE       rac12c1                  Open,STABLE
ora.oc4j
      1        ONLINE  ONLINE       rac12c1                  STABLE
ora.rac12c1.vip
      1        ONLINE  ONLINE       rac12c1                  STABLE
ora.rac12c2.vip
      1        ONLINE  ONLINE       rac12c2                  STABLE
ora.scan1.vip
      1        ONLINE  ONLINE       rac12c1                  STABLE
--------------------------------------------------------------------------------

フラッシュリカバリー用のASMディスク追加

su - grid
/u01/app/12.1.0/grid/bin/asmca

GUIが起動したら「作成」から残りのディスクを「FRA」として作成する

 

DBソフトウェアインストール

su - oracle
unzip linuxamd64_12102_database_1of2.zip > /devnull
unzip linuxamd64_12102_database_2of2 > /dev/null

./runInstaller
  • インストール・オプション
    データベース・ソフトウェアのみインストール
  • Gridインストール・オプション
    Oracle Real Application Clustersデータベースのインストール
  • ノードの選択
    rac12c1 と rac12c にチェックを入れて、
    SSH接続 - 設定 でSSHでのパスワードなしログインを構成する
  • インストールの場所
    Oracleベース   :/u01/app/oracle
    ソフトウェアの場所:/u01/app/oracle/product/12.1.0/dbhome_1
  • 権限のあるオペレーティング・システム・グループ
    OSOPER が 空白。それ以外は全て dba

最後にに rootシェルの実行を指定される。

/u01/app/oracle/product/12.1.0/dbhome_1/root.sh

データベースの作成

/u01/app/oracle/product/12.1.0/dbhome_1/bin/dbca
  • データベースの操作
    データベースの作成
  • 作成モード
    拡張モード
  • データベース・テンプレート
    データベースタイプ:Oracle Real Application Clusters(RAC)データベース
    構成タイプ    :管理者管理型
    テンプレート   :汎用またはトランザクション処理
  • データベース識別情報
    グローバールデータベース名:orcl
    SID接頭辞         :orcl
    コンテナ・データベースとして作成 のチェックは外す(12cからの新機能)チェック入れてもうまくいくかも
  • データベースは一
    rac12c1 と rac12c2 を選択済 に移動させる
  • 管理オプション
    ・クラスタ検証ユーティリティのチェックは外す
    ・Enterprise Manger(EM)Database Expressの構成 にチェックを入れる
     ポート番号は 5500
    ・Emterprise Manager(EM)Cloud Control への登録のチェックは外す
    EM Cloud Controlで管理(EM Agentインストール済み)の場合は登録する。変わりにDatabase Expressのチェックを外す(不要なので)
  • 記憶域の場所
    ・ファイルの記憶域タイプ:自動ストレージ管理(ASM)
    ・全てのデータベース・ファイルに足し打て共通の位置を使用
     ファイルの場所:+DATA
     Oracle Manger Filesの使用にチェック
    ・リカバリ・ファイルの記憶域タイプ:自動ストレージ管理(ASM)
    ・高速リカバリ領域の指定 のチェック
     高速リカバリ領域    :+FRA
     高速リカバリ領域のサイズ:4560MB(全部使ってもよいかも)
    ・アーカイブ有効化 にチェック
  • 初期化パラメータ
    メモリー     :通常設定。物理メモリ3GBの場合は、512MBまで減らす(1024MBでも大丈夫かもしれない)
    キャラクタ・セット:Unicodeを使用を選択
  • 作成オプション
    データベースの作成 にチェック

作成後のクラスターリソース(ora.orcl.dbが追加されている)

crsctl stat res -t
--------------------------------------------------------------------------------
Name           Target  State        Server                   State details       
--------------------------------------------------------------------------------
Local Resources
--------------------------------------------------------------------------------
ora.ASMNET1LSNR_ASM.lsnr
               ONLINE  ONLINE       rac12c1                  STABLE
               ONLINE  ONLINE       rac12c2                  STABLE
ora.DATA.dg
               ONLINE  ONLINE       rac12c1                  STABLE
               ONLINE  ONLINE       rac12c2                  STABLE
ora.FRA.dg
               ONLINE  ONLINE       rac12c1                  STABLE
               ONLINE  ONLINE       rac12c2                  STABLE
ora.LISTENER.lsnr
               ONLINE  ONLINE       rac12c1                  STABLE
               ONLINE  ONLINE       rac12c2                  STABLE
ora.net1.network
               ONLINE  ONLINE       rac12c1                  STABLE
               ONLINE  ONLINE       rac12c2                  STABLE
ora.ons
               ONLINE  ONLINE       rac12c1                  STABLE
               ONLINE  ONLINE       rac12c2                  STABLE
--------------------------------------------------------------------------------
Cluster Resources
--------------------------------------------------------------------------------
ora.LISTENER_SCAN1.lsnr
      1        ONLINE  ONLINE       rac12c1                  STABLE
ora.MGMTLSNR
      1        ONLINE  ONLINE       rac12c1                  169.254.21.166 192.1
                                                             68.100.41,STABLE
ora.asm
      1        ONLINE  ONLINE       rac12c1                  Started,STABLE
      2        ONLINE  ONLINE       rac12c2                  Started,STABLE
      3        OFFLINE OFFLINE                               STABLE
ora.cvu
      1        ONLINE  ONLINE       rac12c1                  STABLE
ora.mgmtdb
      1        ONLINE  ONLINE       rac12c1                  Open,STABLE
ora.oc4j
      1        ONLINE  ONLINE       rac12c1                  STABLE
ora.orcl.db
      1        ONLINE  ONLINE       rac12c1                  Open,STABLE
      2        ONLINE  ONLINE       rac12c2                  Open,STABLE
ora.rac12c1.vip
      1        ONLINE  ONLINE       rac12c1                  STABLE
ora.rac12c2.vip
      1        ONLINE  ONLINE       rac12c2                  STABLE
ora.scan1.vip
      1        ONLINE  ONLINE       rac12c1                  STABLE

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

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

ALTER PROFILE "DEFAULT" LIMIT PASSWORD_LIFE_TIME UNLIMITED PASSWORD_GRACE_TIME UNLIMITED;


リスナー設定

/u01/app/oracle/product/12.1.0/dbhome_1/network/admin/tnsnames.ora

ORCL =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.11.43)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = orcl)
    )
  )

## 以下を追加
ORCL1 =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.11.43)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = orcl)
      (INSTANCE_NAME = orcl1)
    )
  )

ORCL2 =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.11.43)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = orcl)
      (INSTANCE_NAME = orcl2)
    )
  )


EM Database Express

emctl がなくなってるので停止・起動方法は不明。インストール時に構成していれば自動で起動する。
管理出来る項目は限定的な為、EM Cloud Control のインストールをしないと11gと同じような感覚で色々なことが出来ない。

https://192.168.11.43:5500/em
lsnrctl status
(ADDRESS=(PROTOCOL=tcp)(HOST=)(PORT=1521))に接続中
リスナーのステータス
------------------------
別名                      LISTENER
バージョン                TNSLSNR for Linux: Version 12.1.0.2.0 - Production
開始日                    08-9月 -2015 21:00:27
稼働時間                  0 日 0 時間 9 分 7 秒
トレース・レベル          off
セキュリティ              ON: Local OS Authentication
SNMP                      OFF
パラメータ・ファイル      /u01/app/12.1.0/grid/network/admin/listener.ora
ログ・ファイル            /u01/app/grid/diag/tnslsnr/rac12c2/listener/alert/log.xml
リスニング・エンドポイントのサマリー...
  (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=LISTENER)))
  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=192.168.11.42)(PORT=1521)))
  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=192.168.11.32)(PORT=1521)))
  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcps)(HOST=rac12c2.zone.com)(PORT=5500))(Security=(my_wallet_directory=/u01/app/oracle/product/12.1.0/dbhome_1/admin/orcl/xdb_wallet))(Presentation=HTTP)(Session=RAW))
サービスのサマリー...
サービス"+ASM"には、1件のインスタンスがあります。
  インスタンス"+ASM2"、状態READYには、このサービスに対する1件のハンドラがあります...
サービス"-MGMTDBXDB"には、1件のインスタンスがあります。
  インスタンス"-MGMTDB"、状態READYには、このサービスに対する1件のハンドラがあります...
サービス"_mgmtdb"には、1件のインスタンスがあります。
  インスタンス"-MGMTDB"、状態READYには、このサービスに対する1件のハンドラがあります...
サービス"orcl"には、1件のインスタンスがあります。
  インスタンス"orcl2"、状態READYには、このサービスに対する1件のハンドラがあります...
サービス"orclXDB"には、1件のインスタンスがあります。
  インスタンス"orcl2"、状態READYには、このサービスに対する1件のハンドラがあります...
サービス"rac12c_cluster"には、1件のインスタンスがあります。
  インスタンス"-MGMTDB"、状態READYには、このサービスに対する1件のハンドラがあります...
コマンドは正常に終了しました。

-- ポート番号の確認
SQL> select dbms_xdb_config.gethttpsport() from dual;


 

Oracleトレース・ファイル・アナライザ・コレクタ

https://docs.oracle.com/cd/E16338_01/rac.112/b56289/troubleshoot.htm
何もしないとファイルが際限なく増えるような気がする
デフォルトで以下のフォルダに格納される

find /u01/app/grid/tfa/[ホスト名]/database/BERKELEY_JE_DB -name "*jdb*" -mtime +3 -type f | xargs ls -rm
-- TFAデーモン起動、停止、再起動
/etc/init.d/init.tfa start
/etc/init.d/init.tfa stop
/etc/init.d/init.tfa restart
-- TFAデーモンを停止し、構成からエントリを削除
/etc/init.d/init.tfa shutdown

トップ   編集 凍結解除 差分 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2017-04-29 (土) 17:06:34 (231d)