AIX 6.1 Oracle11g 11.2.0.4 RAC 安裝心得
在RAC安裝過程中涉及多個使用者,多種工具,這裡列出常見命令提示符:
# UNIX的SHELL提示符,表示root使用者的登入
$ UNIX的SHELL提示符,表示oracl使用者或grid使用者的登入
安裝RAC是一個比較耗時,並且容易出錯的過程。最重要的階段是安裝前的準備,準備工作越充分,安裝就會越順利。在這個階段對硬體、軟體進行一系列的配置,如配置儲存、網路、引數、許可權等步驟繁多,環環相扣,一樣都不能馬虎。在專案實施期間,資料庫工程師往往是後出場的角色,前面有系統工程師安裝好作業系統,安裝所需的包,調通網路。儲存工程師劃分好磁碟櫃,安裝多路徑軟體,接下來才能開始安裝Oracle資料庫。有些必要的包最好在安裝前和其他工程師溝通好,按照版本要求安裝,以免在安裝Oracle資料庫時發現缺東少西的十分麻煩。
AIX的作業系統無法再虛擬機器下安裝,沒接觸過AIX作業系統的同學會感覺陌生。其實和Linux相比安裝方法是大同小異,或者說沒有差異,只是在前期的配置有些不同,具體細節在下文中會有所體現。
系統配置
1號機主機名 |
cjscora01 |
2號機主機名 |
cjscora02 |
1號機IP及虛擬IP |
10.157.140.1 10.157.140.3 |
2號機IP及虛擬IP |
10.157.140.2 10.157.140.4 |
SCAN IP |
10.157.140.5 |
資料庫安裝配置
|
|
ORACLE_BASE |
grid: /oracle/app/grid oracle:/oracle/app/oracle |
ORACLE_HOME |
grid: /oracle/app/11.2.0/grid oracle: /oracle/app/oracle/11.2.0/db |
ORACLE_SERVICE_NAME |
eicdb |
資料檔案路徑 |
+DATA |
Oracle管理員帳戶口令 |
oracle |
資料庫元件 |
全選 |
標準資料庫功能 |
全選 |
初始化引數: Memory size |
160G |
資料庫引數: db_block_size character set(字符集) |
8k ZHS16GBK |
是否使用歸檔方式執行資料庫 |
是 |
如果使用歸檔方式執行資料庫,歸檔路徑位置 |
+ARCH |
安裝過程
一、每個節點的硬體要求:
#/usr/sbin/lsattr –E –l sys0 –a realmem
MemTotal: 201326592 kB
2、交換分割槽:分配24GB
#/usr/sbin/lsps -a
SwapTotal: 25165824 kB
注意:所有節點的CPU主頻、記憶體大小應該大致相當,這樣當在做節點間切換時,兩個節點的處理能力不會有較大差異。本次專案專案採用的伺服器為IBM780,記憶體192GB,32顆CPU,配置比較不錯。
二、作業系統要求:
AIX 6.1 required packages:
bos.adt.base
bos.adt.lib
bos.adt.libm
bos.perf.libperfstat 6.1.2.1 or later
bos.perf.perfstat
bos.perf.proctools
rsct.basic.rte (For RAC configurations only)
rsct.compat.clients.rte (For RAC configurations only)
xlC.aix61.rte:10.1.0.0 or later
gpfs.base 3.2.1.8 or later (Only for RAC)
APARs for AIX 6.1:
IZ41855
IZ51456
IZ52319
IZ97457
IZ89165
注意:為了透過SSH在兩個節點間建立對等關係,需要在每個節點上安裝以下軟體。
.bash
.openssl
.openssh
2、tmp分割槽[root@db1 /]# df –k
至少1GB
3、系統版本
[root@db1 /]# oslevel -s
6100-05-11-1140
注意:首選的作業系統版本一定是最穩定的而不一定是最新的。本次作業系統採用了比較保守的6100-05-11-1140
,本次安裝系統的IBM工程師經驗豐富,推薦我們採用了這個版本。
4、系統核心引數
smitty chgsys
Maximum number of processes available to a single user [16384]
注意:該引數的預設值偏小,在高併發的生產環境下,session數和process數都比較高,在圖形安裝頁面時如果只是把process調高而相對應的該引數沒有及時調整會報出一個警告。
5、建使用者和組,配置環境變數mkgroup -'A' id='1000' adms='root' oinstall
mkgroup -'A' id='1020' adms='root' asmadmin
mkgroup -'A' id='1021' adms='root' asmdba
mkgroup -'A' id='1022' adms='root' asmoper
mkgroup -'A' id='1031' adms='root' dba
mkgroup -'A' id='1032' adms='root' oper
mkuser id='1001' pgrp='oinstall' groups='dba,asmdba,asmadmin,oper' home='/home/oracle' oracle
mkuser id='1002' pgrp='oinstall' groups='asmadmin,asmdba,asmoper,oper,dba' home='/home/grid' grid
passwd grid
passwd oracle
分別用grid和oracle使用者登陸一次,修改密碼。
給grid、oracle使用者授權
檢查許可權
# /usr/bin/lsuser -a capabilities grid
/usr/bin/lsuser -a capabilities oracle
授權命令如下:
/usr/bin/chuser capabilities=CAP_NUMA_ATTACH,CAP_BYPASS_RAC_VMM,CAP_PROPAGATE grid
/usr/bin/chuser capabilities=CAP_NUMA_ATTACH,CAP_BYPASS_RAC_VMM,CAP_PROPAGATE oracle
6、Grid使用者環境變數設定如下:
節點1
umask 022
TMP=/tmp; export TMP
TMPDIR=$TMP; export TMPDIR
ORACLE_SID=+ASM1; export ORACLE_SID
ORACLE_BASE=/oracle/app/grid; export ORACLE_BASE
ORACLE_HOME=/oracle/app/11.2.0/grid; export ORACLE_HOME
PATH=$ORACLE_HOME/bin:$PATH; export PATH
節點2
umask 022
TMP=/tmp; export TMP
TMPDIR=$TMP; export TMPDIR
ORACLE_SID=+ASM2; export ORACLE_SID
ORACLE_BASE=/oracle/app/grid; export ORACLE_BASE
ORACLE_HOME=/oracle/grid; export ORACLE_HOME
PATH=$ORACLE_HOME/bin:$PATH; export PATH
7、Oracle使用者環境變數設定如下:
節點1
umask 022
TMP=/tmp; export TMP
TMPDIR=$TMP; export TMPDIR
ORACLE_BASE=/oracle/app/oracle; export ORACLE_BASE
ORACLE_HOME=$ORACLE_BASE/11.2.0/db; export ORACLE_HOME
ORACLE_SID= oradb1; export ORACLE_SID
ORACLE_TERM=xterm; export ORACLE_TERM
PATH=/usr/sbin:$PATH; export PATH
PATH=$ORACLE_HOME/bin:$PATH; export PATH
節點2
umask 022
TMP=/tmp; export TMP
TMPDIR=$TMP; export TMPDIR
ORACLE_BASE=/oracle/app/oracle; export ORACLE_BASE
ORACLE_HOME=$ORACLE_BASE/11.2.0/db; export ORACLE_HOME
ORACLE_SID= oradb2; export ORACLE_SID
ORACLE_TERM=xterm; export ORACLE_TERM
PATH=/usr/sbin:$PATH; export PATH
PATH=$ORACLE_HOME/bin:$PATH; export PATH
8、設定shell限制
vi /etc/security/limits.conf
檔案中加入
default:
fsize = -1
core = 2097151
cpu = -1
data = -1
rss = -1
stack = -1
nofiles = -1
stack_hard = -1
grid :
core = -1
oracle :
core = -1
注意:針對grid使用者和oracle使用者,需要分別設定它們在SHELL中對資源的使用情況,如對CPU、記憶體、資料段等。為了保證資料庫能夠執行,需要這些資源的限制取消,也就是-1,或者設定為Oracle推薦的值。
9、檢查Core File Creation是否啟用用如下命令檢查是否enable
lsattr -El sys0 -a fullcore
fullcore false Enable full CORE dump True
1. Set the ulimit setting for core dumps to unlimited:
# ulimit -c unlimited
2. Set the ulimit setting for core files to unlimited:
# ulimit -f unlimited
# mkdir -p /oracle/app/oracle/11.2.0/db
# mkdir -p /oracle/app/grid/
# mkdir -p /oracle/grid
# mkdir -p /oracle/app/oraInventory
# chown -R oracle:oinstall /oracle/app/oracle
# chown -R grid:oinstall /oracle/grid
# chown -R grid:oinstall /oracle/app/grid
# chown -R grid:oinstall /oracle/app/oraInventory
# chmod -R 775 /oracle/
11、刪除ntp服務,使用oracle時間同步器
# stopsrc -s xntpd
# mv /etc/ntp.conf /etc/ntp.conf.org
注意:RAC叢集在執行的過程中要求各節點的時鐘進行同步。常用的同步方法有兩種,一種是利用作業系統提供的NTP服務;另一種是用Oracle提供的叢集時間同步軟體。此次專案採用第二種方式。為了避免衝突,將/etc/ntp.conf檔案改名,使其失效。
12、網路引數調整檢查引數
/usr/sbin/no -a | fgrep ephemeral
tcp_ephemeral_low = 32768
tcp_ephemeral_high = 65535
udp_ephemeral_low = 32768
udp_ephemeral_high = 65535
修改引數如下
/usr/sbin/no -p -o tcp_ephemeral_low=9000 -o tcp_ephemeral_high=65500
/usr/sbin/no -p -o udp_ephemeral_low=9000 -o udp_ephemeral_high=65500
13、其他引數調整
檢查系統知否執行在compatibility mode
lsattr -E -l sys0 -a pre520tune
如果返回 pre520tune enable Pre-520 tuning compatibility mode True
則系統執行在compatibility mode
修改引數方法如下:
# no -o parameter_name=value
在/etc/rc.net檔案中新增
if [ -f /usr/sbin/no ] ; then
/usr/sbin/no -o udp_sendspace=65536
/usr/sbin/no -o udp_recvspace=655360
/usr/sbin/no -o tcp_sendspace=65536
/usr/sbin/no -o tcp_recvspace=65536
/usr/sbin/no -o rfc1323=1
/usr/sbin/no -o sb_max=4194304
/usr/sbin/no -o ipqmaxlen=512
fi
如果上述命令的執行結果為:
pre520tune disable Pre-520 tuning compatibility mode True,系統未執行在compatibility mode
修改引數方法如下:
/usr/sbin/no -r -o ipqmaxlen=512
/usr/sbin/no -p -o rfc1323=1
/usr/sbin/no -p -o sb_max=4194304
/usr/sbin/no -p -o tcp_recvspace=65536
/usr/sbin/no -p -o tcp_sendspace=65536
/usr/sbin/no -p -o udp_recvspace=655360
/usr/sbin/no -p -o udp_sendspace=65536
三、配置節點間互信關係
vi /etc/hosts
127.0.0.1 loopback localhost # loopback (lo0) name/address
10.157.140.1 cjscora01
10.157.140.3 cjscora01-vip
192.168.150.1 cjscora01-priv
10.157.140.2 cjscora02
10.157.140.4 cjscora02-vip
192.168.150.2 cjscora02-priv
10.157.140.5 cjscora-scan
2、配置使用者等效性
這部分操作是傳統的做法,在oracle11g R2版本後我們可以省去這部分手工操作,在圖形化安裝叢集軟體的過程中配置,只需點點滑鼠就可完成所有的工作。
配置grid使用者等效性
在節點一執行下命令:
$ mkdir ~/.ssh
$ chmod 700 ~/.ssh
$ /usr/bin/ssh-keygen -t rsa
$ /usr/bin/ssh-keygen -t dsa
$ touch ~/.ssh/authorized_keys
$ ssh cjscora01 cat /home/grid/.ssh/id_rsa.pub >> authorized_keys
$ ssh cjscora01 cat /home/grid/.ssh/id_dsa.pub >> authorized_keys
$ ssh cjscora02 cat /home/grid/.ssh/id_rsa.pub >> authorized_keys
$ ssh cjscora02 cat /home/grid/.ssh/id_dsa.pub >> authorized_keys
$chmod 600 ~/.ssh/authorized_keys
$ exec /usr/bin/ssh-agent $SHELL
$ /usr/bin/ssh-add
$ scp authorized_keys cjscora02:/home/grid/.ssh --將grid金鑰複製到節點二
$ ssh cjscora01 date
$ ssh cjscora02 date
$ ssh cjscora01-priv date
$ ssh cjscora02-priv date
配置oracle使用者等效性
在節點一執行下面命令建立oracle金鑰:
$ mkdir ~/.ssh
$ chmod 700 ~/.ssh
$ /usr/bin/ssh-keygen -t rsa
$ /usr/bin/ssh-keygen -t dsa
$ touch ~/.ssh/authorized_keys
$ ssh cjscora01 cat /home/oracle/.ssh/id_rsa.pub >> authorized_keys
$ ssh cjscora01 cat /home/oracle/.ssh/id_dsa.pub >> authorized_keys
$ ssh cjscora02 cat /home/oracle/.ssh/id_rsa.pub >> authorized_keys
$ ssh cjscora02 cat /home/oracle/.ssh/id_dsa.pub >> authorized_keys
$chmod 600 ~/.ssh/authorized_keys
$ exec /usr/bin/ssh-agent $SHELL
$ /usr/bin/ssh-add
$ scp authorized_keys cjscora02:/home/oracle/.ssh --將oracle金鑰複製到節點二
$ ssh cjscora01 date
$ ssh cjscora02 date
$ ssh cjscora01-priv date
$ ssh cjscora02-priv date
四、配置ASM磁碟
--須透過下面的步驟確認磁碟可用且一致,兩節點都執行
1、檢查磁碟數量/usr/sbin/lspv | grep -i none
hdisk4 none None
hdisk5 none None
hdisk6 none None
hdisk7 none None
……
hdisk315 none None
2、給磁碟分配pv id
外部儲存裝置中的同一塊硬碟在不同節點上的名稱可能會不同。同一個硬碟在節點一中的名稱可能是hdisk4,在節點二中的名稱可能是hdisk5.雖然ASM例項能正確識別這樣的硬碟,但對於管理員來說可能會產生歧義。不管怎樣,這塊硬碟有一個不變的屬性是PVID,無論在節點一還是節點二下都是一樣的。透過下面的命令可以產生硬碟的PVID
chdev -l hdisk4 -a pv=yes
chdev -l hdisk5 -a pv=yes
chdev -l hdisk6 -a pv=yes
chdev -l hdisk7 -a pv=yes
……
chdev -l hdisk100 -a pv=yes
3、檢查pv id是否在兩個節點間一一對應
cjscora01#lspv
hdisk4 00f76fa9f361157b None
hdisk5 00f76fa9f36116a5 None
hdisk6 00f76fa9f36117d0 None
hdisk7 00f76fa9f3611901 None
……
hdisk315 00f76fb4f3612dce None
cjscora02# lspv
hdisk4 00f76fa9f361157b None
hdisk5 00f76fa9f36116a5 None
hdisk6 00f76fa9f36117d0 None
hdisk7 00f76fa9f3611901 None
……
Hdisk315 00f76fb4f3612dce None
4、修改磁碟許可權
本專案使用ASM,需要指定ASM磁碟中所要包含的磁碟,並保證grid使用者有對這些磁碟的寫許可權
# chown grid:asmadmin /dev/rhdiskn --修改磁碟屬組命令示例
chown grid:asmadmin /dev/rhdisk4
chown grid:asmadmin /dev/rhdisk5
chown grid:asmadmin /dev/rhdisk6
chown grid:asmadmin /dev/rhdisk7
……
chown grid:asmadmin /dev/rhdisk315
# chmod 660 /dev/rhdiskn --修改磁碟許可權命令示例
chmod 660 /dev/rhdisk4
chmod 660 /dev/rhdisk5
chmod 660 /dev/rhdisk6
chmod 660 /dev/rhdisk7
……
chmod 660 /dev/rhdisk315
5、檢查磁碟屬性
有些型號的儲存設別具有reserve_lock或者reserve_policy屬性,這兩個屬性的存在會阻止多個節點對儲存裝置進行並行讀寫,所以在安裝叢集軟體之前應該對其屬性進行修改。
lsattr -E -l hdisk4 |grep reserve_
lsattr -E -l hdisk5 |grep reserve_
lsattr -E -l hdisk6 |grep reserve_
lsattr -E -l hdisk7 |grep reserve_
……
lsattr -E -l hdisk315 |grep reserve_
6、設定磁碟屬性為reserve_lock=no或reserve_policy=no_reserve
chdev -l hdiskn -a [ reserve_lock=no | reserve_policy=no_reserve ]
chdev -l hdisk4 –a reserve_policy=no_reserve
chdev -l hdisk5 –a reserve_policy=no_reserve
chdev -l hdisk6 –a reserve_policy=no_reserve
chdev -l hdisk7 –a reserve_policy=no_reserve
……
chdev -l hdisk100–a reserve_policy=no_reserve
7、清除磁碟pvid
透過PVID可以在不同節點中對比、確認同一塊硬碟,但是在安裝叢集軟體之前應該在每個節點上將PVID清除掉,否則在安裝過程中可能會出現錯誤。
chdev -l hdisk4 -a pv=clear
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29067253/viewspace-2136463/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- RAC安裝【AIX 7 + 11.2.0.4 + ASM】AIASM
- Aix 6.1下安裝Oracle11g詳細文件AIOracle
- AIX 6.1安裝RAC出現時斷時續問題AI
- aix 6.1+hacmp+ oracle 10g rac 安裝步驟AIACMOracle 10g
- AIX6.1+HA+ORACLE10G RAC 安裝參考手冊AIOracle
- aix rac安裝AI
- AIX 6.1 靜默安裝11.1.0.6AI
- AIX6.1+HAcmp5.4+ORACLE10G RAC 安裝參考手冊AIACMOracle
- Oracle Database RAC 11.2.0.3 for AIX6.1TL7安裝記錄(5)OracleDatabaseAI
- CentOS 7.6 安裝11.2.0.4 RACCentOS
- oracle rac aix 安裝OracleAI
- AIX6.1下安裝及配置VNCAIVNC
- Aix6.1 安裝 Bash Shell環境AI
- aix6.1上安裝oracle 10.2.0.1AIOracle
- aix 6.1 安裝gcc,遇到“BUILTIN”錯誤AIGCUI
- AIX 7.1上安裝Oracle11gAIOracle
- Solaris下Oracle RAC 11.2.0.4 安裝方法Oracle
- oracle11g 解除安裝racOracle
- 【RAC安裝】 AIX下安裝Oracle 11gR2 RACAIOracle
- AIX 5.3/6.1環境下安裝Oracle 10gR2 RAC常見報錯AIOracle 10g
- aix6.1安裝12.1.0.2rac無法識別共享磁碟的問題AI
- Windows 11.2.0.4 RAC安裝配置以及RAC新增節點Windows
- AIX 安裝 11g RACAI
- AIX6.1下 Oracle 10g的安裝AIOracle 10g
- AIX 6.1安裝apache報no acceptable C compiler foundAIApacheCompile
- redhat 6.4 安裝oracle11g RAC 安裝RDACRedhatOracle
- aix 6.1上rac升級到10.2.0.4AI
- AIX 6.1上安裝ORACLE 10R2 RAC 的幾個重要的準備工作AIOracle
- oracle11g rac安裝過程Oracle
- Oracle 11.2.0.4 RAC安裝最新PSU補丁Oracle
- redhat7.6安裝Oracle11G RACRedhatOracle
- Oracle11g R2 RAC安裝Oracle
- AIX6.1安裝ORACLE 11g(單機使用ASM)AIOracleASM
- Oracle10g for AIX6.1安裝問題解決OracleAI
- Oracle10g 在AIX 6.1上的靜默安裝OracleAI
- 安裝aix rac的關鍵步驟AI
- aix5.3 安裝oracle11g 準備工作AIOracle
- MAC+Vmware Fusion安裝Oracle11g RACMacOracle