詳解Oracle RAC在Linux下的安裝
在這里我們將介紹Oracle RAC在Linux下的安裝,Oracle Real Application Server,真正應(yīng)用集群,簡稱Oracle RAC ,是Oracle的并行集群,位于不同服務(wù)器系統(tǒng)的Oracle實例同時訪問同一個Oracle數(shù)據(jù)庫,節(jié)點之間通過私有網(wǎng)絡(luò)進行通信,所有的控制文件、聯(lián)機日志和數(shù)據(jù)文件存放在共享的設(shè)備上,能夠被集群中的所有節(jié)點同時讀寫。
系統(tǒng)配置
1、創(chuàng)建用戶和組 oinstall dba 組用戶
- oracle -g oinstall -G dba
匿名用戶:確認(rèn)匿名用戶 nobody 存在與系統(tǒng)中,在安裝完成后nobody 用戶必須執(zhí)行一些擴展任務(wù)(extjob)確認(rèn)nobody用戶是否存在:
- #id nobody
如果用戶不存在則需要添加該用戶。
注意給oracle用戶設(shè)置密碼
2、配置網(wǎng)絡(luò)
ip地址的規(guī)劃,通過修改 /etc/sysconf/network-script/ifcfg-ethx
配置網(wǎng)卡的靜態(tài)ip地址主機名的***修改: /etc/network
本地DNS的配置: /etc/hosts
配置/etc/host.conf 該文件用來指定域名解析方法的順序:
- order hosts,bind
它說明,首先通過/etc/hosts文件解析,如果在該文件中沒有相應(yīng)的主機名與IP 地址的對應(yīng)關(guān)系,再通過域名服務(wù)器bind進行解析
3、配置安全SSH 通道,針對ORACLE用戶,在每個節(jié)點創(chuàng)建 rsa 和dsa 的密鑰
- rac1#su - oracle
- rac1#mkdir .ssh
- rac1#chmod 700 .ssh
- rac1#cd .ssh
rac1#ssh-keygen -t rsa 創(chuàng)建密鑰對,其他默認(rèn)
同樣在另一臺主機上執(zhí)行相應(yīng)的操作。
- rac2#su - oracle
- rac2#mkdir .ssh
- rac2#chmod 700 .ssh
- rac2#cd .ssh
- rac2#ssh-keygen -t rsa 創(chuàng)建密鑰對,其他默認(rèn)
rac1#ssh rac1 cat /home/oracle/.ssh/id_rsa.pub >> authorized_keys 把節(jié)點1 的共鑰 從定向到一個文件因為現(xiàn)在還沒有密鑰對,所以會提示輸入密碼。直接輸入密碼就行了
- rac1#ssh rac2 cat /home/oracle/.ssh/id_rsa.pub >> authorized_keys 把節(jié)點2 的共鑰 從定向到一個文件
- rac1#cat authorized_keys 查看節(jié)點1和節(jié)點2的共鑰的內(nèi)容,同樣拷貝到 節(jié)點2上面。
- rac1#scp authorized_keys rac2:/home/oracle/.ssh/ 要輸入節(jié)點2的密碼
改一下權(quán)限
- rac1#chmod 600 authorized-keys
DSA密鑰的設(shè)置同理
- rac1#ssh rac1 date 測試共鑰連接情況 遠(yuǎn)程執(zhí)行 date 命令,此時不用輸入密碼
- rac1#ssh rac2 date 測試共鑰連接情況 遠(yuǎn)程執(zhí)行 date 命令,此時不用輸入密碼
此時可證實安全需要通道配置成功
4、檢查所需的軟件
#rpm -qa |grep 需要的軟件包
5、配置內(nèi)核參數(shù)
- vi /etc/sysctl.conf
- kernel.sem=250 32000 100 128
- kernel.shmmni=4096
- kernel.shmall=2097152
- kernel.shmmax=2147483648
- net.ipv4.ip_local_port_range=1024 65000
- net.core.rmem_default=1048576
- net.core.rmem_max=1048576
- net.core.wmem_default=262144
- net.core.wmem_max=262144
然后執(zhí)行: #sysctl -p
6、設(shè)置shell對oracle用戶的限制
vi /etc/security/limits.conf 在每個節(jié)點上執(zhí)行相同的操作:編輯/etc/security/limits.conf,添加內(nèi)容:
- oracle soft nproc 2047
- oracle hard nproc 16384
- oracle soft nofile 1024
- oracle hard nofilw 65536
編輯/etc/pam.d/login,添加如下內(nèi)容: session required /lib/security/pam_limits.so
編輯/etc/profile,添加內(nèi)容如下:
- if[$USER="ORACLE"]; THEN
- if[$SHELL="/bin/ksh"];then
- ulimit -p 16384
- ulimit -n 65536
- else
- ulimit -u 16384 -n 65536
- fi
- fi
磁盤配置
安裝 CRS
安裝真正的RAC
存儲選項:
項目 | 存儲系統(tǒng) | 存儲位置 |
clusterware | 本地(EXT3)或NFS | 本地或NFS |
voting disk | OCFS2 Raw device NFS | 共享磁盤 NFS |
OCR | OCFS2 Raw device NFS | 共享磁盤 NFS |
數(shù)據(jù)庫軟件 | OCFS2 本地 NFS | 本地或共享磁盤 NFS |
數(shù)據(jù)庫 | OCFS2 ASM Raw device NFS | 共享磁盤 NFS |
恢復(fù)文件 | OCFS2 ASM NFS | 共享磁盤 NFS |
存儲機制
|
clusterware
|
數(shù)據(jù)庫
|
恢復(fù)文件
|
ASM
|
否
|
是
|
是
|
OCFS2
|
是
|
是
|
是
|
Raw Device
|
是
|
是
|
否
|
NFS
|
是
|
是
|
是
|
OCFS2 安裝這個軟件 下載3個軟件包 在兩邊都要安裝 OCFS2-2.6.9-22.ELsmp-1.2.3-1.i686.rpm 這個文件要跟 uname -a 的系統(tǒng)版本對應(yīng)起來 ocfs2console-1.2.1-1.i386.rpm ocfs2-tools-1.2.1-1.i386.rpm
安裝順序:tools ----內(nèi)核模塊 ----- console
磁盤的處理
- #fdisk -l 查看磁盤分區(qū)
- #fdisk /dev/sdb 創(chuàng)建分區(qū)
- #export DISPLAY=本地機器IP
- #ocfs2console 打開ocfs2的控制臺進行ocfs2的配置
菜單Task 下的format開始格式化分區(qū)
Oracle的安裝前的準(zhǔn)備
- #mkdir -p /orac/orachome
- #mkdir -p /orac/oradata
- #mount -t ocfs2 /dev/sdb1 /orac/orahome
- #df -h 查看掛接情況
- #mount -t ocfs2 -o datavolume,nointr /dev/sdb2 orac/oradata
- #df -h
- #mounted.ocfs2 -f 查看ocfs2文件系統(tǒng)的加載情況
另一個節(jié)點rac2
- #/etc/init.d/o2cd load 加載這個模塊
- #/etc/init.d/o2cd status 查看加載這個模塊的狀態(tài)
查看到節(jié)點2 ocfs2 狀態(tài)是 offline
- #/etc/init.d/o2cd online 使其online
- #/etc/init.d/o2cd status 查看加載這個模塊的狀態(tài)
- #mount -t ocfs2 /dev/sdb1 /orac/orahome
- #df -h
- #mounted.ocfs2 -f
- #mount -t ocfs2 -o datavolume,nointr /dev/sdb2 /orac/oradata
- #mounted.ocfs2 -f
系統(tǒng)啟動時自動加載ocfs2文件系統(tǒng)和啟動相應(yīng)的模塊----兩個節(jié)點都要配置
- #/etc/init.d/o2cd configure 啟動時自動加載ocfs2 的相關(guān)模塊
- #vi /etc/fstab 啟動是自動掛接文件系統(tǒng)
- /dev/sdb1 /orac/orahome ocfs2 _netdev 0 0
- /dev/sdb2 /orac/oradata ocfs2 _netdev,datavolume,nointr 0 0
安裝集群 clusterware 文件夾 crs 安裝clusterware oradata 建庫時使用 orahome 安裝oracle數(shù)據(jù)庫軟件
要對這些文件夾的主用戶進行修改
- #cd /orac
- #chown root.oinstall crs
- #chown oracle.oinstall orahome
- #chown oracle.oinstall oradata
- #chmod -R 775 ors
- #chmod -R 775 orahome
- #chmod -R 775 oradata
- #ls -l
在另外一個節(jié)點上也要進行相應(yīng)的修改
把集群clusterware安裝軟件拷貝進來
- #su - oracle
- #export DISPLAY=本地ip:0.0
- #./runInstaller
安裝數(shù)據(jù)庫軟件 選擇安裝類型 企業(yè)版
創(chuàng)建數(shù)據(jù)庫: #dbca
測試數(shù)據(jù)庫的情況:客戶端的連接文件的修改:在客戶端安裝路徑下: NETWORK/ADMIN/tnsnames.ora
- ORATEST tns服務(wù)名=
- (DESCRIPTION =
- (ADDRESS_LIST =
- (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.116.121 節(jié)點1IP)(PORT = 1521))
- (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.116.129 節(jié)點2IP)(PORT = 1521))
- )
- (CONNECT_DATA =
- (SERVICE_NAME = oratest.sinobest.com 全局?jǐn)?shù)據(jù)庫名)
- )
- )
- EXTPROC_CONNECTION_DATA =
- (DESCRIPTION =
- (ADDRESS_LIST =
- (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC0))
- )
- (CONNECT_DATA =
- (SID = PLSExtProc)
- (PRESENTATION = RO)
- )
- )
SQLPLUS客戶端的測試:在windows下打開命令行 或者直接打開 Oracle SQL*Plus
- > sqlplus /nolog
- SQL>conn sys/123456@tnsname as sysdba
- SQL>select * from V$instance; 查看當(dāng)前的實例
- SQL>set wrap off; 設(shè)置一下顯示的方式
- SQL>set linesize 200;
- SQL>select * from V$instance; 查看當(dāng)前的實例
- SQL>select * from gv$instance; 查看全局實例視圖
原文鏈接:http://blog.chinaunix.net/u3/105031/showart_2087248.html
【編輯推薦】
- 詳解Oracle RAC入門和提高
- 詳解Oracle手動創(chuàng)建數(shù)據(jù)庫幾大步驟
- 揭示Oracle數(shù)據(jù)庫機Exadata背后的秘密
- 詳解Oracle數(shù)據(jù)庫優(yōu)化方案與實踐
- Oracle數(shù)據(jù)庫調(diào)試與性能優(yōu)化