11gRAC在AIX上基本安裝引數解析
網路需求
注意:網路IP需求需要和聯通人員溝通,確保IP不存在不衝突
每個節點一個public IP
每個節點一個public VIP
每個節點一個private IP
一個用於叢集的SCAN名稱和一個和public IP同網段的IP
l public IP,VIP和private IP,scan vip寫入/etc/hosts檔案
除錯網路系統引數(兩節點均要執行)
(具體的值設定參考最小安裝文件給出建議)
/usr/sbin/no -p -o tcp_ephemeral_low=9000 -o tcp_ephemeral_high=65500 指定為 TCP 短暫埠分配的最大埠號和最小埠號
/usr/sbin/no -p -o udp_ephemeral_low=9000 -o udp_ephemeral_high=65500 指定為 UDP 短暫埠分配的最大埠號
修改命令 vi /etc/rc.net
if [ -f /usr/sbin/no ] then
no -r -o ipqmaxlen=521
no -p -o rfc1323=1
no -p -o sb_max=1500000
no -p -o tcp_recvspace=65536 //接收資料時設定系統預設套接字緩衝區大小。這影響 TCP 使用的視窗大小
no -p -o tcp_sendspace=65536
no -p -o udp_recvspace=1351680
no -p -o udp_sendspace=135168
fi
修改最大程式數:
chdev -l sys0 -a maxuproc=16384
chdev -l sys0 -a minpout=4096
chdev -l sys0 -a minpout=8193
chdev -l sys0 -a ncargs=128
將udp_sendspace引數設定成為:[(DB_BLOCK_SIZE*DB_FILE_MULTIBLOCK_READ_COUNT)+4096],並且不小於65536;
將udp_recvspace引數設定為>=4*udp_sendspace;
ncargs 用途:指定執行 exec() 子例程時,ARG/ENU 列表(大小為 4 KB 的塊)允許的最大大小。
ipqmaxlen:指定接收包的數目,這些包可以列在 IP 協議輸入佇列 透過檢查netstat -s | grep ipintrq檢視是否有溢位判斷該值是否需要增大
rfc1323:用途:
啟用 TCP 最佳化,設定 RFC 為 1323(TCP 擴充套件到高效能)。值為 1 表示 tcp_sendspace and tcp_recvspace 可以超過 64 KB。
tcp_recvspace:預設值:16384 位元組,lsattr -El interface or ifconfig interface 設定套接字緩衝區大小為 16 KB(16,384)會改善在標準 Ethernet 和 Token-Ring 網路上的效能。預設值是 16384
tcp_sendspace
用途:傳送資料時設定系統預設套接字緩衝區大小。預設值:16384 位元組,
sb_max:指定 TCP 和 UDP 套接字所允許的最大緩衝區大小。限制 setsockopt、udp_sendspace、udp_recvspace、tcp_sendspace 和 tcp_recvspace
請增大此大小,並且,最好設定為 4096 的倍數。您應該將其設定成接近於最大套接字緩衝區限制的兩到四倍。
TCP(Transmission Control Protocol,傳輸控制協議)是基於連線的協議,也就是說,在正式收發資料前,必須和對方建立可靠的連線。一個TCP連線必須要經過三次“對話”才能建立起來,其中的過程非常複雜,我們這裡只做簡單、形象的介紹,你只要做到能夠理解這個過程即可。我們來看看這三次對話的簡單過程:主機A向主機B發出連線請求資料包:“我想給你發資料,可以嗎?”,這是第一次對話;主機B向主機A傳送同意連線和要求同步(同步就是兩臺主機一個在傳送,一個在接收,協調工作)的資料包:“可以,你什麼時候發?”,這是第二次對話;主機A再發出一個資料包確認主機B的要求同步:“我現在就發,你接著吧!”,這是第三次對話。三次“對話”的目的是使資料包的傳送和接收同步,經過三次“對話”之後,主機A才向主機B正式傳送資料。
UDP(User Data Protocol,使用者資料包協議)是與TCP相對應的協議。它是面向非連線的協議,它不與對方建立連線,而是直接就把資料包傳送過去!
UDP適用於一次只傳送少量資料、對可靠性要求不高的應用環境。比如,我們經常使用“ping”命令來測試兩臺主機之間TCP/IP通訊是否正常,其實“ping”命令的原理就是向對方主機傳送UDP資料包,然後對方主機確認收到資料包,如果資料包是否到達的訊息及時反饋回來,那麼網路就是通的。例如,在預設狀態下,一次“ping”操作傳送4個資料包(如圖2所示)。大家可以看到,傳送的資料包數量是4包,收到的也是4包(因為對方主機收到後會發回一個確認收到的資料包)。這充分說明了UDP協議是面向非連線的協議,沒有建立連線的過程。正因為UDP協議沒有連線的過程,所以它的通訊效果高;但也正因為如此,它的可靠性不如TCP協議高。QQ就使用UDP發訊息,因此有時會出現收不到訊息的情況。
tcp協議和udp協議的差別
TCP UDP
是否連線 面向連線 面向非連線
傳輸可靠性 可靠 不可靠
應用場合 傳輸大量資料 少量資料
速度 慢 快
調整儲存引數(針對ASM磁碟)
FSCSI 裝置屬性 FC_ERR_RECOV 修改成 FAST_FAIL
chdev -l fscsi0 -a fc_err_recov=fast_fail -P
chdev -l fscsi0 -a dyntrk=yes
建立使用者,組和檔案系統
建立GRID和ORACLE使用者
建立oinstall組DBA組
所有節點的GRID和ORACLE使用者名稱和組名要相同
所有節點的GRID和ORACLE使用者ID和組ID必須相同
建立/u01檔案系統 作為GRID_BASE和ORACLE_BASE目錄
建立/u01/oracle/app/ /11.2.0/grid目錄用於Grid Infrastructure軟體
建立/u01/oracle/app/product檔案系統,作為ORACLE_BASE
建立/u01/oracle/app/product/11.2.0/用於Database軟體
建立命令
mkgroup -A id=1001 oinstall
mkgroup -A id=1002 dba
mkuser -a id=1001 pgrp=oinstall groups=oinstall,dba fsize=-1 cpu=-1 data=-1 core=-1 rss=-1 stack=-1 stack_hard=-1 capabilities=CAP_NUMA_ATTACH,CAP_BYPASS_RAC_VMM,CAP_PROPAGATE grid
passwd grid
mkuser -a id=1002 pgrp=oinstall groups=oinstall,dba fsize=-1 cpu=-1 data=-1 rss=-1 stack=-1 stack_hard=-1 capabilities=CAP_NUMA_ATTACH,CAP_BYPASS_RAC_VMM,CAP_PROPAGATE oracle
passwd oracle
透過lsuser -a capabilities grid 檢視使用者的capabilities
使用者shell限制
1. 更改root使用者的shell限制,要求如下
2. fsize = -1 //定義使用者的程式可以建立或擴充套件的最大檔案的軟限制。表示 512 位元組塊的數目。要使檔案大於 2G,請指定 -1。此屬性的最小值為 8192。
3. core = -1 //指定使用者程式可以建立的最大核心檔案的軟限制。Value 引數是一個整數,表示 512 位元組塊的數目
4. cpu = -1 //標識使用者程式可以使用的系統單位時間(以秒為單位)的最大量的軟限制。Value 引數是一個整數。所有負值都視為無限。
5. data = -1 //指定使用者程式的最大資料段的軟限制。表示 512 位元組塊的數目。此屬性的最小可允許值為 1272。請指定 -1,以使它無限
6. rss = -1 //使用者程式可以分配的實體記憶體最大量的軟限制。Value 值是一個十進位制整數字符串,以 512 位元組塊為單位。系統當前不強制該值
7. stack = -1 //指定使用者程式的最大程式堆疊段的軟限制。Value 引數是一個整數,表示要分配的 512 位元組塊的數目。對於此屬性的最小可允許值為 49
8. nofiles = -1 //定義使用者程式可以一次開啟的檔案描述符數的軟限制。Value 引數是一個整數。
更改命令:smit chuser
信任關係設定
設定前先修改ssh配置檔案引數:
vi /etc/ssh/sshd_config
#LoginGraceTime 2m.修改為LoginGraceTime 0
grid使用者:
mhdb1:
#su – grid
$mkdir .ssh
$cd .ssh
$ssh-keygen –t rsa //一路回車
$ssh-keygen –t dsa
$cat id_dsa.pub>authorized_keys
$cat id_rsa.pub>>authorized_keys
mhdb2:
#su – grid
$mkdir .ssh
$cd .ssh
$ssh-keygen –t rsa //一路回車
$ssh-keygen –t dsa
mhdb1:
#su – grid
$cd .ssh
$scp authorized_keys mhdb2:/home/grid/.ssh/ //選擇yes 輸入mhdb2 grid使用者密碼
mhdb2:
#su – grid
$cd .ssh
$cat id_dsa.pub>>authorized_keys
$cat id_rsa.pub>>authorized_keys
$scp authorized_keys mhdb1:/home/grid/.ssh/ //選擇yes 輸入test1 grid使用者密碼
mhdb1:
#su – grid
$ssh mhdb2 date //選擇yes,不需輸入密碼
$ssh mhdb1 date //選擇yes
test2:
#su – grid
$ssh mhdb1 date
$ssh mhdb2 date
//如果不需要輸入密碼,則配置成功
//oracle使用者相同配置
時間同步
使用oracle時間同步服務
mv /etc/ntp.conf /etc/ntp.conf.bak
環境變數設定
檢查時區和時間一致性
$ echo $TZ
CST6CDT
$date
$ Fri Oct 14 09:41:30 CDT 2011
確保時區一致,兩臺主機的時間相差不超過1分鐘
修改CRS對應使用者屬性(如果建立使用者已經編輯則可不用操作)
chuser capabilities=CAP_NUMA_ATTACH,CAP_BYPASS_RAC_VMM,CAP_PROPAGATE grid
chuser capabilities=CAP_NUMA_ATTACH,CAP_BYPASS_RAC_VMM,CAP_PROPAGATE oracle
該操作必須執行,否則crs安裝執行root.sh時會報錯。
安裝Grid Infrastructure
以root使用者身份在所有節點執行Grid Infrastructure軟體下的rootpre.sh指令碼
# ./rootpre.sh(兩個節點執行)
./rootpre.sh output will be logged in /tmp/rootpre.out_11-10-15.01:40:28
Checking if group services should be configured....
Nothing to configure.
預檢查指令碼:
$ ./runcluvfy.sh stage -pre crsinst -n mhdb1,mhdb2 -verbose
開始安裝
相信在以上詳細的引數解釋及配置情況下,在AIX上安裝基本的oracle RAC環境應該不成問題
------------------------------------------------------------------------------------
原部落格地址:http://blog.itpub.net/23732248/
原作者:應以峰 (frank-ying)
-------------------------------------------------------------------------------------
注意:網路IP需求需要和聯通人員溝通,確保IP不存在不衝突
每個節點一個public IP
每個節點一個public VIP
每個節點一個private IP
一個用於叢集的SCAN名稱和一個和public IP同網段的IP
l public IP,VIP和private IP,scan vip寫入/etc/hosts檔案
除錯網路系統引數(兩節點均要執行)
(具體的值設定參考最小安裝文件給出建議)
/usr/sbin/no -p -o tcp_ephemeral_low=9000 -o tcp_ephemeral_high=65500 指定為 TCP 短暫埠分配的最大埠號和最小埠號
/usr/sbin/no -p -o udp_ephemeral_low=9000 -o udp_ephemeral_high=65500 指定為 UDP 短暫埠分配的最大埠號
修改命令 vi /etc/rc.net
if [ -f /usr/sbin/no ] then
no -r -o ipqmaxlen=521
no -p -o rfc1323=1
no -p -o sb_max=1500000
no -p -o tcp_recvspace=65536 //接收資料時設定系統預設套接字緩衝區大小。這影響 TCP 使用的視窗大小
no -p -o tcp_sendspace=65536
no -p -o udp_recvspace=1351680
no -p -o udp_sendspace=135168
fi
修改最大程式數:
chdev -l sys0 -a maxuproc=16384
chdev -l sys0 -a minpout=4096
chdev -l sys0 -a minpout=8193
chdev -l sys0 -a ncargs=128
將udp_sendspace引數設定成為:[(DB_BLOCK_SIZE*DB_FILE_MULTIBLOCK_READ_COUNT)+4096],並且不小於65536;
將udp_recvspace引數設定為>=4*udp_sendspace;
ncargs 用途:指定執行 exec() 子例程時,ARG/ENU 列表(大小為 4 KB 的塊)允許的最大大小。
ipqmaxlen:指定接收包的數目,這些包可以列在 IP 協議輸入佇列 透過檢查netstat -s | grep ipintrq檢視是否有溢位判斷該值是否需要增大
rfc1323:用途:
啟用 TCP 最佳化,設定 RFC 為 1323(TCP 擴充套件到高效能)。值為 1 表示 tcp_sendspace and tcp_recvspace 可以超過 64 KB。
tcp_recvspace:預設值:16384 位元組,lsattr -El interface or ifconfig interface 設定套接字緩衝區大小為 16 KB(16,384)會改善在標準 Ethernet 和 Token-Ring 網路上的效能。預設值是 16384
tcp_sendspace
用途:傳送資料時設定系統預設套接字緩衝區大小。預設值:16384 位元組,
sb_max:指定 TCP 和 UDP 套接字所允許的最大緩衝區大小。限制 setsockopt、udp_sendspace、udp_recvspace、tcp_sendspace 和 tcp_recvspace
請增大此大小,並且,最好設定為 4096 的倍數。您應該將其設定成接近於最大套接字緩衝區限制的兩到四倍。
TCP(Transmission Control Protocol,傳輸控制協議)是基於連線的協議,也就是說,在正式收發資料前,必須和對方建立可靠的連線。一個TCP連線必須要經過三次“對話”才能建立起來,其中的過程非常複雜,我們這裡只做簡單、形象的介紹,你只要做到能夠理解這個過程即可。我們來看看這三次對話的簡單過程:主機A向主機B發出連線請求資料包:“我想給你發資料,可以嗎?”,這是第一次對話;主機B向主機A傳送同意連線和要求同步(同步就是兩臺主機一個在傳送,一個在接收,協調工作)的資料包:“可以,你什麼時候發?”,這是第二次對話;主機A再發出一個資料包確認主機B的要求同步:“我現在就發,你接著吧!”,這是第三次對話。三次“對話”的目的是使資料包的傳送和接收同步,經過三次“對話”之後,主機A才向主機B正式傳送資料。
UDP(User Data Protocol,使用者資料包協議)是與TCP相對應的協議。它是面向非連線的協議,它不與對方建立連線,而是直接就把資料包傳送過去!
UDP適用於一次只傳送少量資料、對可靠性要求不高的應用環境。比如,我們經常使用“ping”命令來測試兩臺主機之間TCP/IP通訊是否正常,其實“ping”命令的原理就是向對方主機傳送UDP資料包,然後對方主機確認收到資料包,如果資料包是否到達的訊息及時反饋回來,那麼網路就是通的。例如,在預設狀態下,一次“ping”操作傳送4個資料包(如圖2所示)。大家可以看到,傳送的資料包數量是4包,收到的也是4包(因為對方主機收到後會發回一個確認收到的資料包)。這充分說明了UDP協議是面向非連線的協議,沒有建立連線的過程。正因為UDP協議沒有連線的過程,所以它的通訊效果高;但也正因為如此,它的可靠性不如TCP協議高。QQ就使用UDP發訊息,因此有時會出現收不到訊息的情況。
tcp協議和udp協議的差別
TCP UDP
是否連線 面向連線 面向非連線
傳輸可靠性 可靠 不可靠
應用場合 傳輸大量資料 少量資料
速度 慢 快
調整儲存引數(針對ASM磁碟)
FSCSI 裝置屬性 FC_ERR_RECOV 修改成 FAST_FAIL
chdev -l fscsi0 -a fc_err_recov=fast_fail -P
chdev -l fscsi0 -a dyntrk=yes
建立使用者,組和檔案系統
建立GRID和ORACLE使用者
建立oinstall組DBA組
所有節點的GRID和ORACLE使用者名稱和組名要相同
所有節點的GRID和ORACLE使用者ID和組ID必須相同
建立/u01檔案系統 作為GRID_BASE和ORACLE_BASE目錄
建立/u01/oracle/app/ /11.2.0/grid目錄用於Grid Infrastructure軟體
建立/u01/oracle/app/product檔案系統,作為ORACLE_BASE
建立/u01/oracle/app/product/11.2.0/用於Database軟體
建立命令
mkgroup -A id=1001 oinstall
mkgroup -A id=1002 dba
mkuser -a id=1001 pgrp=oinstall groups=oinstall,dba fsize=-1 cpu=-1 data=-1 core=-1 rss=-1 stack=-1 stack_hard=-1 capabilities=CAP_NUMA_ATTACH,CAP_BYPASS_RAC_VMM,CAP_PROPAGATE grid
passwd grid
mkuser -a id=1002 pgrp=oinstall groups=oinstall,dba fsize=-1 cpu=-1 data=-1 rss=-1 stack=-1 stack_hard=-1 capabilities=CAP_NUMA_ATTACH,CAP_BYPASS_RAC_VMM,CAP_PROPAGATE oracle
passwd oracle
透過lsuser -a capabilities grid 檢視使用者的capabilities
使用者shell限制
1. 更改root使用者的shell限制,要求如下
2. fsize = -1 //定義使用者的程式可以建立或擴充套件的最大檔案的軟限制。表示 512 位元組塊的數目。要使檔案大於 2G,請指定 -1。此屬性的最小值為 8192。
3. core = -1 //指定使用者程式可以建立的最大核心檔案的軟限制。Value 引數是一個整數,表示 512 位元組塊的數目
4. cpu = -1 //標識使用者程式可以使用的系統單位時間(以秒為單位)的最大量的軟限制。Value 引數是一個整數。所有負值都視為無限。
5. data = -1 //指定使用者程式的最大資料段的軟限制。表示 512 位元組塊的數目。此屬性的最小可允許值為 1272。請指定 -1,以使它無限
6. rss = -1 //使用者程式可以分配的實體記憶體最大量的軟限制。Value 值是一個十進位制整數字符串,以 512 位元組塊為單位。系統當前不強制該值
7. stack = -1 //指定使用者程式的最大程式堆疊段的軟限制。Value 引數是一個整數,表示要分配的 512 位元組塊的數目。對於此屬性的最小可允許值為 49
8. nofiles = -1 //定義使用者程式可以一次開啟的檔案描述符數的軟限制。Value 引數是一個整數。
更改命令:smit chuser
信任關係設定
設定前先修改ssh配置檔案引數:
vi /etc/ssh/sshd_config
#LoginGraceTime 2m.修改為LoginGraceTime 0
grid使用者:
mhdb1:
#su – grid
$mkdir .ssh
$cd .ssh
$ssh-keygen –t rsa //一路回車
$ssh-keygen –t dsa
$cat id_dsa.pub>authorized_keys
$cat id_rsa.pub>>authorized_keys
mhdb2:
#su – grid
$mkdir .ssh
$cd .ssh
$ssh-keygen –t rsa //一路回車
$ssh-keygen –t dsa
mhdb1:
#su – grid
$cd .ssh
$scp authorized_keys mhdb2:/home/grid/.ssh/ //選擇yes 輸入mhdb2 grid使用者密碼
mhdb2:
#su – grid
$cd .ssh
$cat id_dsa.pub>>authorized_keys
$cat id_rsa.pub>>authorized_keys
$scp authorized_keys mhdb1:/home/grid/.ssh/ //選擇yes 輸入test1 grid使用者密碼
mhdb1:
#su – grid
$ssh mhdb2 date //選擇yes,不需輸入密碼
$ssh mhdb1 date //選擇yes
test2:
#su – grid
$ssh mhdb1 date
$ssh mhdb2 date
//如果不需要輸入密碼,則配置成功
//oracle使用者相同配置
時間同步
使用oracle時間同步服務
mv /etc/ntp.conf /etc/ntp.conf.bak
環境變數設定
檢查時區和時間一致性
$ echo $TZ
CST6CDT
$date
$ Fri Oct 14 09:41:30 CDT 2011
確保時區一致,兩臺主機的時間相差不超過1分鐘
修改CRS對應使用者屬性(如果建立使用者已經編輯則可不用操作)
chuser capabilities=CAP_NUMA_ATTACH,CAP_BYPASS_RAC_VMM,CAP_PROPAGATE grid
chuser capabilities=CAP_NUMA_ATTACH,CAP_BYPASS_RAC_VMM,CAP_PROPAGATE oracle
該操作必須執行,否則crs安裝執行root.sh時會報錯。
安裝Grid Infrastructure
以root使用者身份在所有節點執行Grid Infrastructure軟體下的rootpre.sh指令碼
# ./rootpre.sh(兩個節點執行)
./rootpre.sh output will be logged in /tmp/rootpre.out_11-10-15.01:40:28
Checking if group services should be configured....
Nothing to configure.
預檢查指令碼:
$ ./runcluvfy.sh stage -pre crsinst -n mhdb1,mhdb2 -verbose
開始安裝
相信在以上詳細的引數解釋及配置情況下,在AIX上安裝基本的oracle RAC環境應該不成問題
------------------------------------------------------------------------------------
原部落格地址:http://blog.itpub.net/23732248/
原作者:應以峰 (frank-ying)
-------------------------------------------------------------------------------------
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/23732248/viewspace-1407638/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 在AIX上安裝GCCAIGC
- 在AIX上安裝VNCAIVNC
- 在AIX4.3.3 ; AIX5.1 和 AIX5.2上安裝OpenSSHAI
- 11gRAC安裝
- AIX基本安裝步驟(轉)AI
- 在AIX上安裝配置Oracle10g RACAIOracle
- 今天在aix5.2上安裝9205AI
- Oracle10g 在AIX 5.3上的安裝OracleAI
- Oracle 9i 在AIX上的安裝 (轉)OracleAI
- DB2___在AIX安裝DB2 8.1基本版DB2AI
- 在AIX解除安裝lcfAI
- goldengate 在aix 和hp-ux上的安裝要求GoAIUX
- 在AIX上安裝配置Oracle10g RAC2AIOracle
- Oracle10g 在AIX 6.1上的靜默安裝OracleAI
- 在AIX中安裝gnu screenAI
- 安裝ORACLE時在Linux上設定核心引數的含義OracleLinux
- AIX上Sybase15的安裝AI
- 日立儲存安裝11gRAC
- 在AIX安裝DB2 8.2AIDB2
- 上週在Aix上安裝oracle10g rac遇到兩個問題AIOracle
- aix6.1上安裝oracle 10.2.0.1AIOracle
- AIX 7.1上安裝Oracle11gAIOracle
- 11gRAC 引數設定DB_ULTRA_SAFE
- oracle 11g 在IBM AIX 5L上的安裝OracleIBMAI
- maxuproc引數案例(AIX)AI
- 在AIX下為Oracle調整網路引數AIOracle
- 管理11gRAC基本命令
- Oracle引數檔案解析——引數解析Oracle
- 在AIX下為Oracle調整磁碟I/O引數AIOracle
- 在AIX5.3安裝Oracle11.2AIOracle
- AIX-maxuproc引數案例AI
- AIX 系統引數配置AI
- AIX fsfastpath 引數調整AIAST
- 在安裝RAC時需要配置的幾個kernel引數
- AIX 安裝Oracle 11g RAC 記憶體及網路引數說明AIOracle記憶體
- aix rac安裝AI
- aix安裝oracleAIOracle
- 關於AIX上VMO調整引數的若干說明AI