[
トップ
] [
新規
|
一覧
|
最終更新
|
ヘルプ
]
AND
OR
開始行:
*[[Oracle]]/ORACLE 10g RAC環境構築 [#w382d333]
VMwarePlayer で CentOS 5.6 + Oracle 10g での RAC環境構築...
|BGCOLOR(#f0f8ff):NIC|BGCOLOR(#f0f8ff):ホスト名|BGCOLOR(#...
|eth0(パブリック)|orac1.com|192.168.11.21|orac2.com|192...
|eth1(プライベート)|orac1i.com|192.168.100.21|orac2i.co...
|VIP(仮想NIC)|orac1v.com|192.168.11.31|orac2v.com|192.1...
パブリックは実際にOracleに接続する際に使用。プライベート...
~
**CnetOSのHW構成 [#nd350a03]
-OSインストールする際のパッケージに、開発環境(gccとか入...
-物理NICを2つ作成しておく。ブリッジ(eth0)と、ホストオンリ...
-1号機で以下の通り新規にディスクを追加
|BGCOLOR(#f0f8ff):用途|BGCOLOR(#f0f8ff):ディスク名|BGCOLO...
|OCRの保存場所|ocr.vmdk|200MB|
|投票DISK保存場所|vot.vmdk|200MB|
|DBのDATA保存場所|dg_data.vmdk|2G|
|Flash Recovery領域|dg_frec.vmdk|2G|
-2号機は、既存のディスクから上記ディスクを選択する~
-共有のマウントできるように、VMの設定ファイル(*.vmx)に...
disk.locking = "false"
diskLib.dataCacheMaxSize = "0"
diskLib.dataCacheMaxReadAheadSize = "0"
diskLib.dataCacheMinReadAheadSize = "0"
diskLib.dataCachePageSize = "4096"
diskLib.maxUnsyncedWrites = "0"
~
**IPアドレスの定義 [#qaa5cba2]
# vi /etc/sysconfig/network-scripts/ifcfg-eth0
# vi /etc/sysconfig/network-scripts/ifcfg-eth1
1号機の設定
DEVICE=eth0
BOOTPROTO=static
IPADDR=192.168.11.21
ONBOOT=yes
DEVICE=eth1
BOOTPROTO=static
IPADDR=192.168.100.21
ONBOOT=yes
2号機の設定
DEVICE=eth0
BOOTPROTO=static
IPADDR=192.168.11.22
ONBOOT=yes
DEVICE=eth1
BOOTPROTO=static
IPADDR=192.168.100.22
ONBOOT=yes
**/etc/hostsの設定 [#h634d353]
# Physical IP
192.168.11.21 orac1.com orac1
192.168.11.22 orac2.com orac2
# 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
~
**事前チェックを回避させる [#a5a555e9]
# vi /etc/redhat-release
[修正前] CentOS release 5.6 (Final)
[修正後] Red Hat Enterprise Linux AS release 4 (Nahant ...
~
**oracleユーザーの作成 [#jc149c37]
# groupadd oinstall
# groupadd dba
# groupadd oper
# useradd -g oinstall -G dba,oper oracle
# passwd oracle ‥‥パスワードの変更
~
**パッケージの確認 [#r63912ab]
# rpm -qa | grep libXp.so.6
# rpm -qa | grep binutils
# rpm -qa | grep compat-db
# rpm -qa | grep control-center
# rpm -qa | grep gcc
# rpm -qa | grep glibc
# rpm -qa | grep glibc-common
# rpm -qa | grep libstdc++
# rpm -qa | grep libstdc++-devel
# rpm -qa | grep make
# rpm -qa | grep pdksh
# rpm -qa | grep sysstat
# rpm -qa | grep xscreensaver
# rpm -qa | grep libaio
~
**入ってないパッケージをインストール [#z4bfb5a4]
# yum -y install libXp.so.6
# yum -y install compat-db
# yum -y install pdksh
# yum -y install sysstat
# yum -y install xscreensaver
# yum -y install libaio
# yum -y compat-gcc*
# yum -y install compat-libstdc*
# yum -y install openmotif*
~
**ClusterWareのRPMパッケージインストール [#t43b1b10]
10201_clusterware_linux32.zip を解凍後、./clusterware/rpm...
# rpm -iv cvuqdisk-1.0.1-1.rpm
~
**インストールディレクトリ作成 [#nd9c04d6]
# mkdir -p /opt/app/oracle
# chown -R oracle:oinstall /opt/app
# chmod -R 775 /opt/app
~
**カーネルパラメータ追加 [#od02d024]
# vi /etc/sysctl.conf
kernel.sem = 250 32000 100 128
kernel.shmmni = 4096
fs.file-max = 65536
net.ipv4.ip_local_port_range = 1024 65000
# /sbin/sysctl -p ‥‥設定反映
~
**oracleユーザーの環境変数定義 [#h8b5c019]
# vi ~oracle/.bash_profile
umask 022
ORACLE_BASE=/opt/app/oracle
ORACLE_HOME=$ORACLE_BASE/product/10.1.0/db
ORACLE_SID=orcl1
ORA_CRS_HOME=$ORACLE_BASE/product/10.1.0/crs
LD_LIBRARY_PATH=$ORACLE_HOME/lib32:$ORACLE_HOME/lib
PATH=/bin:/usr/bin:/usr/local/bin:/sbin/:$ORACLE_HOME/bi...
export PATH LD_LIBRARY_PATH ORACLE_BASE ORACLE_HOME ORAC...
alias cddb='cd $ORACLE_HOME'
alias cdcrs='cd $ORA_CRS_HOME'
alias cdasm='cd $ORACLE_BASE/product/10.1.0/asm'
&color(red){※ORACLE_SIDは2号機はorcl2にすること};~
~
**RAWデバイスの作成 [#f37eeb51]
# fdisk -l
正常な領域テーブルを含んでいません になってる4つのDISKを...
# fdisk /dev/sdb
n ⇒ p ⇒ 1 ⇒ Enter x 2回 ⇒ w の順番で/dev/sdb〜sdeまで実...
コマンド (m でヘルプ): n
コマンドアクション
e 拡張
p 基本領域 (1-4)
p
領域番号 (1-4): 1
最初 シリンダ (1-204, default 1):
Using default value 1
終点 シリンダ または +サイズ または +サイズM または +サ...
Using default value 204
コマンド (m でヘルプ): w
領域テーブルは交換されました!
ioctl() を呼び出して領域テーブルを再読込みします。
~
# vi /etc/udev/rules.d/60-raw.rules
ACTION=="add", KERNEL=="sdb1", RUN+="/bin/raw /dev/raw/r...
ACTION=="add", KERNEL=="sdc1", RUN+="/bin/raw /dev/raw/r...
ACTION=="add", KERNEL=="sdd1", RUN+="/bin/raw /dev/raw/r...
ACTION=="add", KERNEL=="sde1", RUN+="/bin/raw /dev/raw/r...
# vi /etc/udev/rules.d/61-raw-permission.rules
KERNEL=="raw1", MODE="0640", OWNER="root", GROUP="oinsta...
KERNEL=="raw2", MODE="0640", OWNER="oracle", GROUP="oins...
KERNEL=="raw3", MODE="0660", OWNER="oracle", GROUP="dba"
KERNEL=="raw4", MODE="0660", OWNER="oracle", GROUP="dba"
~
ここで一旦OSをリブートさせる。~
~
**デバイス初期化 [#v02d553d]
# dd if=/dev/zero of=/dev/raw/raw1 bs=1024k count=200
# dd if=/dev/zero of=/dev/raw/raw2 bs=1024k count=200
# dd if=/dev/zero of=/dev/raw/raw3 bs=1024k count=2000
# dd if=/dev/zero of=/dev/raw/raw4 bs=1024k count=2000
~
**SSH構成 [#oc079f0d]
***RSA/DSA鍵の作成(1/2号機で実施) [#xbc8f06f]
# su - oracle
$ mkdir ~oracle/.ssh
$ chmod 700 ~/.ssh
$ /usr/bin/ssh-keygen -t rsa
$ /usr/bin/ssh-keygen -t dsa
***鍵のコピー(1号機のみで実施) [#k75b204c]
$ touch ~/.ssh/authorized_keys
$ cd ~oracle/.ssh
$ ssh orac1 cat /home/oracle/.ssh/id_rsa.pub >> authoriz...
⇒yes ⇒oracleユーザーのパスワード
$ ssh orac1 cat /home/oracle/.ssh/id_dsa.pub >> authoriz...
$ ssh orac2 cat /home/oracle/.ssh/id_rsa.pub >> authoriz...
⇒yes ⇒oracleユーザーのパスワード
$ ssh orac2 cat /home/oracle/.ssh/id_dsa.pub >> authoriz...
$ scp authorized_keys orac2:/home/oracle/.ssh
***パスフレーズを求められずにsshコマンドが出来るようにす...
$ exec /usr/bin/ssh-agent $SHELL
$ /usr/bin/ssh-add
*Cluster Wareのインストール [#q22610cd]
以降、oracleユーザーのGUI環境(1号機)にて実施すること。~
~
$ cd clusterware(clusterwareを解凍した時に作成されたデ...
$ ./runInstaller
-インベントリ・ディレクトリと資格証明の指定~
デフォルトのまま~
~
-ホームの詳細の指定
,名前,OraCrs10g_home
,パス,/opt/app/oracle/product/10.1.0/crs
~
-クラスタ構成の指定
|BGCOLOR(#f0f8ff):パブリック・ノード名|BGCOLOR(#f0f8ff):...
|orac1.com|orac1i.com|orac1v.com|
|orac2.com|orac2i.com|orac2v.com|
~
-ネットワーク・インターフェースの使用方法の指定~
eth0 を パブリックに変更する~
~
-Oracle Cluster Registryの場所~
外部冗長性を選択し「/dev/raw/raw1」~
~
-投票ディスクの場所~
外部冗長性を選択し「/dev/raw/raw2」~
~
-シェルの実行
インストール途中、以下のシェル実行を促されるので1/2号機両...
root.shは並行して実行するとおかしくなるので注意~
# /opt/app/oracle/oraInventory/orainstRoot.sh
# /opt/app/oracle/product/10.1.0/crs/root.sh
&color(red){VIPノード・アプリケーションの存在をチェック ...
~
**VIPの構成(rootユーザーにて1/2号機実行) [#r37d57a9]
***vipcaを起動可能にする [#sfd09a19]
# vi /opt/app/oracle/product/10.1.0/crs/bin/vipca
以下の行をコメントアウト(64bitの場合、arch=`uname -m` ...
#Remove this workaround when the bug 3937317 is f...
# arch=`uname -m`
# if [ "$arch" = "i686" -o "$arch" = "ia64" ]
# then
# LD_ASSUME_KERNEL=2.4.19
# export LD_ASSUME_KERNEL
# fi
#End workaround
;;
~
***VIPコンフィグレーションを作成する [#k0ca6274]
rootユーザーにてGUI環境にログインする
# cd /opt/app/oracle/product/10.1.0/crs/bin
# ./vipca
-クラスタ・ノードの仮想IP
IP別名に orac1v.com と入力すると以下の通り自動で他の設定...
|BGCOLOR(#f0f8ff):ノード名|BGCOLOR(#f0f8ff):IP別名|BGCOLO...
|orac1|orac1v.com|192.168.11.31|255.255.255.0|
|orac2|orac1v.com|192.168.11.32|255.255.255.0|
**サービス制御コマンド [#h0317541]
起動できないので、以下の箇所をコメントアウトする
# vi /opt/app/oracle/product/10.1.0/db/bin/srvctl
※srvctl単体で実行した時、PATHが$ORACLE_HOME優先なので、d...
#Remove this workaround when the bug 3937317 is fixed
#LD_ASSUME_KERNEL=2.4.19
#export LD_ASSUME_KERNEL
~
*ASMのインストール [#t27c3142]
10201_database_linux32.zip を任意のディレクトリに解凍する
**ASMのインストール [#v8d4c189]
以降、oracleユーザーのGUI環境(1号機)にて実施すること。~
$ cd database
$ ./runInstaller
-インストール・タイプの選択~
Enterprise Edition~
~
-ホームの詳細
,名前,OraCrs10g_home1
,パス,/opt/app/oracle/product/10.1.0/asm
~
-ハードウェアのクラスタ・インストールモードの指定~
クラスタ・インストールを選択し、orac2にチェックを入れる。~
~
-構成オプションの選択
自動ストレージ管理(ASM)の構成を選択。~
任意のパスワードを入力。~
~
-自動ストレージ管理の構成~
ディスク・グループ名に「DATA」~
冗長性に「外部」~
選択で、/dev/raw/raw3 にチェックを入れる。~
~
-rootシェルの実行(1/2号機で実行)~
# /opt/app/oracle/product/10.1.0/asm/root.sh
~
&color(red){orac2のASMマウントできないのエラー};が発生す...
~
**サービス起動の確認(全てONLINEになっていること) [#n5dc...
$ /opt/app/oracle/product/10.1.0/crs/bin//crs_stat -t
Name Type Target State Host
--------------------------------------------------------...
ora....SM1.asm application ONLINE ONLINE orac1
ora....C1.lsnr application ONLINE ONLINE orac1
ora.orac1.gsd application ONLINE ONLINE orac1
ora.orac1.ons application ONLINE ONLINE orac1
ora.orac1.vip application ONLINE ONLINE orac1
ora....SM2.asm application ONLINE ONLINE orac2
ora....C2.lsnr application ONLINE ONLINE orac2
ora.orac2.gsd application ONLINE ONLINE orac2
ora.orac2.ons application ONLINE ONLINE orac2
ora.orac2.vip application ONLINE ONLINE orac2
**ASMマウントできない事象の対応 [#u9fbe7cd]
1/2号機共にOS再起動し、クラスターサービスを再度実行すると...
# /opt/app/oracle/product/10.1.0/crs/crsctl enable crs
# /opt/app/oracle/product/10.1.0/crs/crsctl start crs
コマンド実行後、順番にリソースが起動され3分後くらいに全て...
crsctl enable crs を実行しないとcrsctl start crsしてもサ...
~
単純にクラスターサービスの再起動でも直るような気がする。~
# crsctl enable crs
# crsctl stop crs
# crsctl start crs
~
*Databaseのインストール [#hb1d9bce]
**データウェアのインストール [#ra8e7711]
以降、oracleユーザーのGUI環境(1号機)にて実施すること。~
$ cd database
$ ./runInstaller
-インストール・タイプの選択~
Enterprise Edition~
~
-ホームの詳細
,名前,OraCrs10g_home2
,パス,/opt/app/oracle/product/10.1.0/db
~
-構成オプションの選択~
データウェア・ソフトウェアのみインストール~
~
**ASMディスク追加 [#o5643091]
$ cd /opt/app/oracle/product/10.1.0/db/bin
$ ./dbca
~
-初期画面
Oracle Real Application Clusterデータベースを選択する~
~
-ステップ1~
自動ストレージ管理の構成~
~
-ステップ2~
すべて選択~
パスワードを聞かれるので、ASMで設定したパスワードを入力す...
~
-ステップ3~
「新規作成」で新しいディスクグループを追加する。~
・ディスク・グループ名に「FRA」~
・冗長性に「外部」~
・選択で、/dev/raw/raw4 にチェックを入れる。~
前の画面に戻るので、FRAを選択する。~
~
**データベース作成 [#t1e99023]
-実行する操作~
データベースの作成~
~
-データベースの記憶域のディスク選択~
DATAにチェック~
~
-データベースのリカバリオプションの選択~
フラッシュ・リカバリ領域の指定にチェック。~
参照から「FRA」を選択する。~
~
-グローバルSID~
orcl~
~
**状態確認 [#de9d5f20]
$ crs_stat -t
Name Type Target State Host ...
--------------------------------------------------------...
ora....SM1.asm application ONLINE ONLINE orac1 ...
ora....C1.lsnr application ONLINE ONLINE orac1 ...
ora.orac1.gsd application ONLINE ONLINE orac1 ...
ora.orac1.ons application ONLINE ONLINE orac1 ...
ora.orac1.vip application ONLINE ONLINE orac1 ...
ora....SM2.asm application ONLINE ONLINE orac2 ...
ora....C2.lsnr application ONLINE ONLINE orac2 ...
ora.orac2.gsd application ONLINE ONLINE orac2 ...
ora.orac2.ons application ONLINE ONLINE orac2 ...
ora.orac2.vip application ONLINE ONLINE orac2 ...
ora.orcl.db application ONLINE ONLINE orac1 ...
ora....l1.inst application ONLINE ONLINE orac1 ...
ora....l2.inst application ONLINE ONLINE orac2
$ sqlplus / as sysdba
SQL> select instance_name from v$instance;
INSTANCE_NAME
----------------
orcl1
~
**再起動後のサービス復帰 [#rf94a1fc]
# crsctl start crs
# emctl start dbconsole
~
# vi /etc/oratab で自動起動の設定があるっぽいが試してない
~
**クライアント側でのtnsnames.ora [#p9597eaf]
DBをインストールしたtnsnames.oraをそのままコピーして配置...
$ORACLE_HOME/network/admin/tnsnames.ora
LISTENERS_ORCL =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.11.21)(PO...
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.11.22)(PO...
)
ORCL =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.11.21)(PO...
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.11.22)(PO...
(LOAD_BALANCE = yes)
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = orcl)
)
)
ORCL1 =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.11.21)(PO...
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = orcl)
(INSTANCE_NAME = orcl1)
)
)
ORCL2 =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.11.22)(PO...
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = orcl)
(INSTANCE_NAME = orcl2)
)
)
sqlplus UID/PASS@ORCL で 1か2号機にログイン
sqlplus UID/PASS@ORCL1 で 1号機にログイン
sqlplus UID/PASS@ORCL2 で 2号機にログイン
~
**2号機へのリスナー経由ログインができない [#ab2bfe7e]
crs_stat -t でlsnrがONLINEになっているにも関わらず、接続...
原因不明ですが、以下の流れを行うと接続可能になる~
./srvctl stop lsnr -n orac2
lsnrctl start
./srvctl start lsnr -n orac2
~
**トラブルシューティング [#x46efdf7]
***文字化けする [#q73649e5]
NLS_LANG環境変数を設定する。文字コードがUTF8の場合は以下...
export NLS_LANG=JAPANESE_JAPAN.AL32UTF8
終了行:
*[[Oracle]]/ORACLE 10g RAC環境構築 [#w382d333]
VMwarePlayer で CentOS 5.6 + Oracle 10g での RAC環境構築...
|BGCOLOR(#f0f8ff):NIC|BGCOLOR(#f0f8ff):ホスト名|BGCOLOR(#...
|eth0(パブリック)|orac1.com|192.168.11.21|orac2.com|192...
|eth1(プライベート)|orac1i.com|192.168.100.21|orac2i.co...
|VIP(仮想NIC)|orac1v.com|192.168.11.31|orac2v.com|192.1...
パブリックは実際にOracleに接続する際に使用。プライベート...
~
**CnetOSのHW構成 [#nd350a03]
-OSインストールする際のパッケージに、開発環境(gccとか入...
-物理NICを2つ作成しておく。ブリッジ(eth0)と、ホストオンリ...
-1号機で以下の通り新規にディスクを追加
|BGCOLOR(#f0f8ff):用途|BGCOLOR(#f0f8ff):ディスク名|BGCOLO...
|OCRの保存場所|ocr.vmdk|200MB|
|投票DISK保存場所|vot.vmdk|200MB|
|DBのDATA保存場所|dg_data.vmdk|2G|
|Flash Recovery領域|dg_frec.vmdk|2G|
-2号機は、既存のディスクから上記ディスクを選択する~
-共有のマウントできるように、VMの設定ファイル(*.vmx)に...
disk.locking = "false"
diskLib.dataCacheMaxSize = "0"
diskLib.dataCacheMaxReadAheadSize = "0"
diskLib.dataCacheMinReadAheadSize = "0"
diskLib.dataCachePageSize = "4096"
diskLib.maxUnsyncedWrites = "0"
~
**IPアドレスの定義 [#qaa5cba2]
# vi /etc/sysconfig/network-scripts/ifcfg-eth0
# vi /etc/sysconfig/network-scripts/ifcfg-eth1
1号機の設定
DEVICE=eth0
BOOTPROTO=static
IPADDR=192.168.11.21
ONBOOT=yes
DEVICE=eth1
BOOTPROTO=static
IPADDR=192.168.100.21
ONBOOT=yes
2号機の設定
DEVICE=eth0
BOOTPROTO=static
IPADDR=192.168.11.22
ONBOOT=yes
DEVICE=eth1
BOOTPROTO=static
IPADDR=192.168.100.22
ONBOOT=yes
**/etc/hostsの設定 [#h634d353]
# Physical IP
192.168.11.21 orac1.com orac1
192.168.11.22 orac2.com orac2
# 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
~
**事前チェックを回避させる [#a5a555e9]
# vi /etc/redhat-release
[修正前] CentOS release 5.6 (Final)
[修正後] Red Hat Enterprise Linux AS release 4 (Nahant ...
~
**oracleユーザーの作成 [#jc149c37]
# groupadd oinstall
# groupadd dba
# groupadd oper
# useradd -g oinstall -G dba,oper oracle
# passwd oracle ‥‥パスワードの変更
~
**パッケージの確認 [#r63912ab]
# rpm -qa | grep libXp.so.6
# rpm -qa | grep binutils
# rpm -qa | grep compat-db
# rpm -qa | grep control-center
# rpm -qa | grep gcc
# rpm -qa | grep glibc
# rpm -qa | grep glibc-common
# rpm -qa | grep libstdc++
# rpm -qa | grep libstdc++-devel
# rpm -qa | grep make
# rpm -qa | grep pdksh
# rpm -qa | grep sysstat
# rpm -qa | grep xscreensaver
# rpm -qa | grep libaio
~
**入ってないパッケージをインストール [#z4bfb5a4]
# yum -y install libXp.so.6
# yum -y install compat-db
# yum -y install pdksh
# yum -y install sysstat
# yum -y install xscreensaver
# yum -y install libaio
# yum -y compat-gcc*
# yum -y install compat-libstdc*
# yum -y install openmotif*
~
**ClusterWareのRPMパッケージインストール [#t43b1b10]
10201_clusterware_linux32.zip を解凍後、./clusterware/rpm...
# rpm -iv cvuqdisk-1.0.1-1.rpm
~
**インストールディレクトリ作成 [#nd9c04d6]
# mkdir -p /opt/app/oracle
# chown -R oracle:oinstall /opt/app
# chmod -R 775 /opt/app
~
**カーネルパラメータ追加 [#od02d024]
# vi /etc/sysctl.conf
kernel.sem = 250 32000 100 128
kernel.shmmni = 4096
fs.file-max = 65536
net.ipv4.ip_local_port_range = 1024 65000
# /sbin/sysctl -p ‥‥設定反映
~
**oracleユーザーの環境変数定義 [#h8b5c019]
# vi ~oracle/.bash_profile
umask 022
ORACLE_BASE=/opt/app/oracle
ORACLE_HOME=$ORACLE_BASE/product/10.1.0/db
ORACLE_SID=orcl1
ORA_CRS_HOME=$ORACLE_BASE/product/10.1.0/crs
LD_LIBRARY_PATH=$ORACLE_HOME/lib32:$ORACLE_HOME/lib
PATH=/bin:/usr/bin:/usr/local/bin:/sbin/:$ORACLE_HOME/bi...
export PATH LD_LIBRARY_PATH ORACLE_BASE ORACLE_HOME ORAC...
alias cddb='cd $ORACLE_HOME'
alias cdcrs='cd $ORA_CRS_HOME'
alias cdasm='cd $ORACLE_BASE/product/10.1.0/asm'
&color(red){※ORACLE_SIDは2号機はorcl2にすること};~
~
**RAWデバイスの作成 [#f37eeb51]
# fdisk -l
正常な領域テーブルを含んでいません になってる4つのDISKを...
# fdisk /dev/sdb
n ⇒ p ⇒ 1 ⇒ Enter x 2回 ⇒ w の順番で/dev/sdb〜sdeまで実...
コマンド (m でヘルプ): n
コマンドアクション
e 拡張
p 基本領域 (1-4)
p
領域番号 (1-4): 1
最初 シリンダ (1-204, default 1):
Using default value 1
終点 シリンダ または +サイズ または +サイズM または +サ...
Using default value 204
コマンド (m でヘルプ): w
領域テーブルは交換されました!
ioctl() を呼び出して領域テーブルを再読込みします。
~
# vi /etc/udev/rules.d/60-raw.rules
ACTION=="add", KERNEL=="sdb1", RUN+="/bin/raw /dev/raw/r...
ACTION=="add", KERNEL=="sdc1", RUN+="/bin/raw /dev/raw/r...
ACTION=="add", KERNEL=="sdd1", RUN+="/bin/raw /dev/raw/r...
ACTION=="add", KERNEL=="sde1", RUN+="/bin/raw /dev/raw/r...
# vi /etc/udev/rules.d/61-raw-permission.rules
KERNEL=="raw1", MODE="0640", OWNER="root", GROUP="oinsta...
KERNEL=="raw2", MODE="0640", OWNER="oracle", GROUP="oins...
KERNEL=="raw3", MODE="0660", OWNER="oracle", GROUP="dba"
KERNEL=="raw4", MODE="0660", OWNER="oracle", GROUP="dba"
~
ここで一旦OSをリブートさせる。~
~
**デバイス初期化 [#v02d553d]
# dd if=/dev/zero of=/dev/raw/raw1 bs=1024k count=200
# dd if=/dev/zero of=/dev/raw/raw2 bs=1024k count=200
# dd if=/dev/zero of=/dev/raw/raw3 bs=1024k count=2000
# dd if=/dev/zero of=/dev/raw/raw4 bs=1024k count=2000
~
**SSH構成 [#oc079f0d]
***RSA/DSA鍵の作成(1/2号機で実施) [#xbc8f06f]
# su - oracle
$ mkdir ~oracle/.ssh
$ chmod 700 ~/.ssh
$ /usr/bin/ssh-keygen -t rsa
$ /usr/bin/ssh-keygen -t dsa
***鍵のコピー(1号機のみで実施) [#k75b204c]
$ touch ~/.ssh/authorized_keys
$ cd ~oracle/.ssh
$ ssh orac1 cat /home/oracle/.ssh/id_rsa.pub >> authoriz...
⇒yes ⇒oracleユーザーのパスワード
$ ssh orac1 cat /home/oracle/.ssh/id_dsa.pub >> authoriz...
$ ssh orac2 cat /home/oracle/.ssh/id_rsa.pub >> authoriz...
⇒yes ⇒oracleユーザーのパスワード
$ ssh orac2 cat /home/oracle/.ssh/id_dsa.pub >> authoriz...
$ scp authorized_keys orac2:/home/oracle/.ssh
***パスフレーズを求められずにsshコマンドが出来るようにす...
$ exec /usr/bin/ssh-agent $SHELL
$ /usr/bin/ssh-add
*Cluster Wareのインストール [#q22610cd]
以降、oracleユーザーのGUI環境(1号機)にて実施すること。~
~
$ cd clusterware(clusterwareを解凍した時に作成されたデ...
$ ./runInstaller
-インベントリ・ディレクトリと資格証明の指定~
デフォルトのまま~
~
-ホームの詳細の指定
,名前,OraCrs10g_home
,パス,/opt/app/oracle/product/10.1.0/crs
~
-クラスタ構成の指定
|BGCOLOR(#f0f8ff):パブリック・ノード名|BGCOLOR(#f0f8ff):...
|orac1.com|orac1i.com|orac1v.com|
|orac2.com|orac2i.com|orac2v.com|
~
-ネットワーク・インターフェースの使用方法の指定~
eth0 を パブリックに変更する~
~
-Oracle Cluster Registryの場所~
外部冗長性を選択し「/dev/raw/raw1」~
~
-投票ディスクの場所~
外部冗長性を選択し「/dev/raw/raw2」~
~
-シェルの実行
インストール途中、以下のシェル実行を促されるので1/2号機両...
root.shは並行して実行するとおかしくなるので注意~
# /opt/app/oracle/oraInventory/orainstRoot.sh
# /opt/app/oracle/product/10.1.0/crs/root.sh
&color(red){VIPノード・アプリケーションの存在をチェック ...
~
**VIPの構成(rootユーザーにて1/2号機実行) [#r37d57a9]
***vipcaを起動可能にする [#sfd09a19]
# vi /opt/app/oracle/product/10.1.0/crs/bin/vipca
以下の行をコメントアウト(64bitの場合、arch=`uname -m` ...
#Remove this workaround when the bug 3937317 is f...
# arch=`uname -m`
# if [ "$arch" = "i686" -o "$arch" = "ia64" ]
# then
# LD_ASSUME_KERNEL=2.4.19
# export LD_ASSUME_KERNEL
# fi
#End workaround
;;
~
***VIPコンフィグレーションを作成する [#k0ca6274]
rootユーザーにてGUI環境にログインする
# cd /opt/app/oracle/product/10.1.0/crs/bin
# ./vipca
-クラスタ・ノードの仮想IP
IP別名に orac1v.com と入力すると以下の通り自動で他の設定...
|BGCOLOR(#f0f8ff):ノード名|BGCOLOR(#f0f8ff):IP別名|BGCOLO...
|orac1|orac1v.com|192.168.11.31|255.255.255.0|
|orac2|orac1v.com|192.168.11.32|255.255.255.0|
**サービス制御コマンド [#h0317541]
起動できないので、以下の箇所をコメントアウトする
# vi /opt/app/oracle/product/10.1.0/db/bin/srvctl
※srvctl単体で実行した時、PATHが$ORACLE_HOME優先なので、d...
#Remove this workaround when the bug 3937317 is fixed
#LD_ASSUME_KERNEL=2.4.19
#export LD_ASSUME_KERNEL
~
*ASMのインストール [#t27c3142]
10201_database_linux32.zip を任意のディレクトリに解凍する
**ASMのインストール [#v8d4c189]
以降、oracleユーザーのGUI環境(1号機)にて実施すること。~
$ cd database
$ ./runInstaller
-インストール・タイプの選択~
Enterprise Edition~
~
-ホームの詳細
,名前,OraCrs10g_home1
,パス,/opt/app/oracle/product/10.1.0/asm
~
-ハードウェアのクラスタ・インストールモードの指定~
クラスタ・インストールを選択し、orac2にチェックを入れる。~
~
-構成オプションの選択
自動ストレージ管理(ASM)の構成を選択。~
任意のパスワードを入力。~
~
-自動ストレージ管理の構成~
ディスク・グループ名に「DATA」~
冗長性に「外部」~
選択で、/dev/raw/raw3 にチェックを入れる。~
~
-rootシェルの実行(1/2号機で実行)~
# /opt/app/oracle/product/10.1.0/asm/root.sh
~
&color(red){orac2のASMマウントできないのエラー};が発生す...
~
**サービス起動の確認(全てONLINEになっていること) [#n5dc...
$ /opt/app/oracle/product/10.1.0/crs/bin//crs_stat -t
Name Type Target State Host
--------------------------------------------------------...
ora....SM1.asm application ONLINE ONLINE orac1
ora....C1.lsnr application ONLINE ONLINE orac1
ora.orac1.gsd application ONLINE ONLINE orac1
ora.orac1.ons application ONLINE ONLINE orac1
ora.orac1.vip application ONLINE ONLINE orac1
ora....SM2.asm application ONLINE ONLINE orac2
ora....C2.lsnr application ONLINE ONLINE orac2
ora.orac2.gsd application ONLINE ONLINE orac2
ora.orac2.ons application ONLINE ONLINE orac2
ora.orac2.vip application ONLINE ONLINE orac2
**ASMマウントできない事象の対応 [#u9fbe7cd]
1/2号機共にOS再起動し、クラスターサービスを再度実行すると...
# /opt/app/oracle/product/10.1.0/crs/crsctl enable crs
# /opt/app/oracle/product/10.1.0/crs/crsctl start crs
コマンド実行後、順番にリソースが起動され3分後くらいに全て...
crsctl enable crs を実行しないとcrsctl start crsしてもサ...
~
単純にクラスターサービスの再起動でも直るような気がする。~
# crsctl enable crs
# crsctl stop crs
# crsctl start crs
~
*Databaseのインストール [#hb1d9bce]
**データウェアのインストール [#ra8e7711]
以降、oracleユーザーのGUI環境(1号機)にて実施すること。~
$ cd database
$ ./runInstaller
-インストール・タイプの選択~
Enterprise Edition~
~
-ホームの詳細
,名前,OraCrs10g_home2
,パス,/opt/app/oracle/product/10.1.0/db
~
-構成オプションの選択~
データウェア・ソフトウェアのみインストール~
~
**ASMディスク追加 [#o5643091]
$ cd /opt/app/oracle/product/10.1.0/db/bin
$ ./dbca
~
-初期画面
Oracle Real Application Clusterデータベースを選択する~
~
-ステップ1~
自動ストレージ管理の構成~
~
-ステップ2~
すべて選択~
パスワードを聞かれるので、ASMで設定したパスワードを入力す...
~
-ステップ3~
「新規作成」で新しいディスクグループを追加する。~
・ディスク・グループ名に「FRA」~
・冗長性に「外部」~
・選択で、/dev/raw/raw4 にチェックを入れる。~
前の画面に戻るので、FRAを選択する。~
~
**データベース作成 [#t1e99023]
-実行する操作~
データベースの作成~
~
-データベースの記憶域のディスク選択~
DATAにチェック~
~
-データベースのリカバリオプションの選択~
フラッシュ・リカバリ領域の指定にチェック。~
参照から「FRA」を選択する。~
~
-グローバルSID~
orcl~
~
**状態確認 [#de9d5f20]
$ crs_stat -t
Name Type Target State Host ...
--------------------------------------------------------...
ora....SM1.asm application ONLINE ONLINE orac1 ...
ora....C1.lsnr application ONLINE ONLINE orac1 ...
ora.orac1.gsd application ONLINE ONLINE orac1 ...
ora.orac1.ons application ONLINE ONLINE orac1 ...
ora.orac1.vip application ONLINE ONLINE orac1 ...
ora....SM2.asm application ONLINE ONLINE orac2 ...
ora....C2.lsnr application ONLINE ONLINE orac2 ...
ora.orac2.gsd application ONLINE ONLINE orac2 ...
ora.orac2.ons application ONLINE ONLINE orac2 ...
ora.orac2.vip application ONLINE ONLINE orac2 ...
ora.orcl.db application ONLINE ONLINE orac1 ...
ora....l1.inst application ONLINE ONLINE orac1 ...
ora....l2.inst application ONLINE ONLINE orac2
$ sqlplus / as sysdba
SQL> select instance_name from v$instance;
INSTANCE_NAME
----------------
orcl1
~
**再起動後のサービス復帰 [#rf94a1fc]
# crsctl start crs
# emctl start dbconsole
~
# vi /etc/oratab で自動起動の設定があるっぽいが試してない
~
**クライアント側でのtnsnames.ora [#p9597eaf]
DBをインストールしたtnsnames.oraをそのままコピーして配置...
$ORACLE_HOME/network/admin/tnsnames.ora
LISTENERS_ORCL =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.11.21)(PO...
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.11.22)(PO...
)
ORCL =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.11.21)(PO...
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.11.22)(PO...
(LOAD_BALANCE = yes)
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = orcl)
)
)
ORCL1 =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.11.21)(PO...
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = orcl)
(INSTANCE_NAME = orcl1)
)
)
ORCL2 =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.11.22)(PO...
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = orcl)
(INSTANCE_NAME = orcl2)
)
)
sqlplus UID/PASS@ORCL で 1か2号機にログイン
sqlplus UID/PASS@ORCL1 で 1号機にログイン
sqlplus UID/PASS@ORCL2 で 2号機にログイン
~
**2号機へのリスナー経由ログインができない [#ab2bfe7e]
crs_stat -t でlsnrがONLINEになっているにも関わらず、接続...
原因不明ですが、以下の流れを行うと接続可能になる~
./srvctl stop lsnr -n orac2
lsnrctl start
./srvctl start lsnr -n orac2
~
**トラブルシューティング [#x46efdf7]
***文字化けする [#q73649e5]
NLS_LANG環境変数を設定する。文字コードがUTF8の場合は以下...
export NLS_LANG=JAPANESE_JAPAN.AL32UTF8
ページ名: