rhel7.4安裝oracle 11G 11.2.0.4.0 RAC

1、操做系統

red hat 7.4
oracle數據庫版本
11.2.0.4
oracle grid版本
11.2.0.4
對應的文件
p13390677_112040_Linux-x86-64_1of7.zip - database software
p13390677_112040_Linux-x86-64_2of7.zip - database software
p13390677_112040_Linux-x86-64_3of7.zip - grid softwarehtml

IP地址規劃:
DNS server:192.168.1.168
db node1:192.168.1.212 public
192.168.1.213 VIP
10.0.1.2 private
db node2:192.168.1.214 public
192.168.1.215 VIP
10.0.1.3 private
scan: 192.168.1.216node

2、基本配置

一、修改主機名稱:
vi /etc/hostname配置文件

hostnamectl set-hostname <計算機名>
A: redhat-212
B: redhat-214linux

二、動態IP修改成靜態IP
cd /etc/sysconfig/network-scripts/
BOOTPROTO="static" #dhcp改成staticios

三、修改兩個rac節點網卡配置:
節點1:c++

cat /etc/sysconfig/network-scripts/ifcfg-ens192 
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=none
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=no
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=ens192
UUID=2a2b7809-26ac-4fc6-95d0-124c7348171a
DEVICE=ens192
ONBOOT=yes
IPADDR=192.168.1.212
PREFIX=24
cat /etc/sysconfig/network-scripts/ifcfg-ens224 
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=static
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=ens224
UUID=6da67cdc-933c-4bfe-a3b1-2896175be86b
DEVICE=ens224
ONBOOT=yes
IPADDR=10.0.1.2
PREFIX=24

節點2:sql

cat /etc/sysconfig/network-scripts/ifcfg-ens192 
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=static
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=ens192
UUID=aeead365-1e33-41c3-b0e9-b147c4a2e688
DEVICE=ens192
ONBOOT=yes
IPADDR=10.0.1.3
PREFIX=24
cat /etc/sysconfig/network-scripts/ifcfg-ens224
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=none
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=no
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=ens224
UUID=e4fe8fed-6e97-43b4-aec6-80ce42588ead
DEVICE=ens224
ONBOOT=yes
IPADDR=192.168.1.214
PREFIX=24

#vim /etc/resolv.conf
nameserver 218.2.2.2數據庫

分別重啓一下網卡:
systemctl restart network.servicevim

禁用該可預測命名規則。對於這一點,你能夠在啓動時傳遞「net.ifnames=0 biosdevname=0 」的內核參數。這是經過編輯/etc/default/grub並加入「net.ifnames=0 biosdevname=0 」到GRUBCMDLINELINUX變量來實現的。bash

cat /etc/default/grub
GRUB_TIMEOUT=5
GRUB_DISTRIBUTOR="$(sed 's, release .*$,,g' /etc/system-release)"
GRUB_DEFAULT=saved
GRUB_DISABLE_SUBMENU=true
GRUB_TERMINAL_OUTPUT="console"
GRUB_CMDLINE_LINUX="crashkernel=auto rd.lvm.lv=rhel/root rd.lvm.lv=rhel/swap net.ifnames=0 biosdevname=0 rhgb quiet"
GRUB_DISABLE_RECOVERY="true"

三、直接關閉防火牆
systemctl stop firewalld.service #中止firewall
systemctl disable firewalld.service #禁止firewall開機啓動服務器

四、關閉selinux
#vim /etc/selinux/config
修改文件
SELINUX=disabled
臨時關閉
#setenforce 0

五、內部DNS解析兩個rac節點:
NODE1:

vim /etc/hosts   127.0.0.1這一行修改一下名字racdb1,末尾添加以下:
127.0.0.1   racdb1 localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.1.216  cluster clusterscan
192.168.1.212  redhat-212
192.168.1.214  redhat-214
192.168.1.213  redhat-212-vip
192.168.1.215  redhat-214-vip
10.0.1.2       raca-priv
10.0.1.3       racb-priv

NODE2:

vim /etc/hosts   127.0.0.1這一行修改一下名字racdb2,末尾添加以下
127.0.0.1   racdb2 localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.1.216  cluster clusterscan
192.168.1.212  redhat-212
192.168.1.214  redhat-214
192.168.1.213  redhat-212-vip
192.168.1.215  redhat-214-vip
10.0.1.2       raca-priv
10.0.1.3       racb-priv

3、openfiler來劃分存儲空間

這個軟件挺好用的,在vmware環境下安裝,其實就是個linux系統,咱們建立vmdisk就好了。配置登錄一個網頁https://ip:446
在網絡存儲服務器 (openfiler1) 上執行如下安裝。
在兩個 Oracle RAC 節點上進行網絡配置以後,下一步是將 Openfiler 軟件安裝到網絡存儲服務器 (openfiler1)。稍後會將網絡存儲服務器配置爲 iSCSI 存儲設備,以知足 Oracle Clusterware 和 Oracle RAC 的全部共享存儲需求。
安裝 Openfiler步驟可參考oracle官網:
http://www.oracle.com/technetwork/cn/articles/hunter-rac11gr2-iscsi-083834-zhs.html

一、使用 Openfiler 配置 iSCSI 卷
OpenFiler設置 iSCSI / 邏輯卷卷名卷描述
racdb-crs1 racdb-ASM CRS Volume 1
racdb-crs2 racdb-ASM CRS Volume 2
racdb-crs3 racdb-ASM CRS Volume 3
racdb-data1 racdb-ASM Data Volume 1
racdb-data2 racdb-ASM Data Volume 2
racdb-data3 racdb-ASM Data Volume 3
racdb-fra1 racdb-ASM FRA Volume 1
racdb-fra2 racdb-ASM FRA Volume 2
racdb-fra3 racdb-ASM FRA Volume 3

二、ISCSI路徑名稱命名
iqn.2006-01.com.openfiler:racdb.crs1
iqn.2006-01.com.openfiler:racdb.crs2
iqn.2006-01.com.openfiler:racdb.crs3
iqn.2006-01.com.openfiler:racdb.data1
iqn.2006-01.com.openfiler:racdb.data2
iqn.2006-01.com.openfiler:racdb.data3
iqn.2006-01.com.openfiler:racdb.fra1
iqn.2006-01.com.openfiler:racdb.fra2
iqn.2006-01.com.openfiler:racdb.fra3

三、兩個節點安裝iscsi客戶端

#yum install -y iscsi-initiator-utils
#systemctl start iscsid.service
#service iscsid start

四、設置iscsi客戶端開機啓動

systemctl enable iscsid.service
systemctl enable iscsi.service

五、查看服務狀態

#systemctl list-unit-files |grep iscsi*
iscsi-shutdown.service                        static  
iscsi.service                                 enabled 
iscsid.service                                enabled 
iscsiuio.service                              disabled
iscsid.socket                                 enabled 
iscsiuio.socket                               enabled

六、發現ISCSI服務端磁盤路徑

#iscsiadm -m discovery -t sendtargets -p openfiler1-priv 爲你的openfiler的IP地址,我這裏地址是10.0.1.100
#iscsiadm -m discovery -t sendtargets -p 10.0.1.100
10.0.1.100:3260,1 iqn.2006-01.com.openfiler:racdb.fra3
10.0.1.100:3260,1 iqn.2006-01.com.openfiler:racdb.fra2
10.0.1.100:3260,1 iqn.2006-01.com.openfiler:racdb.fra1
10.0.1.100:3260,1 iqn.2006-01.com.openfiler:racdb.data3
10.0.1.100:3260,1 iqn.2006-01.com.openfiler:racdb.data2
10.0.1.100:3260,1 iqn.2006-01.com.openfiler:racdb.data1
10.0.1.100:3260,1 iqn.2006-01.com.openfiler:racdb.crs3
10.0.1.100:3260,1 iqn.2006-01.com.openfiler:racdb.crs2
10.0.1.100:3260,1 iqn.2006-01.com.openfiler:racdb.crs1

七、每一個 Oracle RAC 節點都可以從網絡存儲服務器中發現可用目標。下一步是手動登陸每一個可用目標,這可使用 iscsiadm 命令行接口完成。這須要在兩個 Oracle RAC 節點上運行。注意,我必須指定網絡存儲服務器的 IP 地址而非其主機名 (openfiler1-priv) — 我認爲必須這麼作,由於上述發現使用 IP 地址顯示目標。
登錄ISCSI遠程磁盤

iscsiadm -m node -T iqn.2006-01.com.openfiler:racdb.crs1 -p 10.0.1.100 -l
iscsiadm -m node -T iqn.2006-01.com.openfiler:racdb.crs2 -p 10.0.1.100 -l
iscsiadm -m node -T iqn.2006-01.com.openfiler:racdb.crs3 -p 10.0.1.100 -l
iscsiadm -m node -T iqn.2006-01.com.openfiler:racdb.data1 -p 10.0.1.100 -l
iscsiadm -m node -T iqn.2006-01.com.openfiler:racdb.data2 -p 10.0.1.100 -l
iscsiadm -m node -T iqn.2006-01.com.openfiler:racdb.data3 -p 10.0.1.100 -l
iscsiadm -m node -T iqn.2006-01.com.openfiler:racdb.fra1 -p 10.0.1.100 -l
iscsiadm -m node -T iqn.2006-01.com.openfiler:racdb.fra2 -p 10.0.1.100 -l
iscsiadm -m node -T iqn.2006-01.com.openfiler:racdb.fra3 -p 10.0.1.100 -l

八、設置開機啓動自動鏈接磁盤

iscsiadm -m node -T iqn.2006-01.com.openfiler:racdb.crs1 -p 10.0.1.100 --op update -n node.startup -v automatic
iscsiadm -m node -T iqn.2006-01.com.openfiler:racdb.crs2 -p 10.0.1.100 --op update -n node.startup -v automatic
iscsiadm -m node -T iqn.2006-01.com.openfiler:racdb.crs3 -p 10.0.1.100 --op update -n node.startup -v automatic
iscsiadm -m node -T iqn.2006-01.com.openfiler:racdb.data1 -p 10.0.1.100 --op update -n node.startup -v automatic
iscsiadm -m node -T iqn.2006-01.com.openfiler:racdb.data2 -p 10.0.1.100 --op update -n node.startup -v automatic
iscsiadm -m node -T iqn.2006-01.com.openfiler:racdb.data3 -p 10.0.1.100 --op update -n node.startup -v automatic
iscsiadm -m node -T iqn.2006-01.com.openfiler:racdb.fra1 -p 10.0.1.100 --op update -n node.startup -v automatic
iscsiadm -m node -T iqn.2006-01.com.openfiler:racdb.fra2 -p 10.0.1.100 --op update -n node.startup -v automatic
iscsiadm -m node -T iqn.2006-01.com.openfiler:racdb.fra3 -p 10.0.1.100 --op update -n node.startup -v automatic

九、查看遠程磁盤路徑和關聯的磁盤路徑

#(cd /dev/disk/by-path; ls -l *openfiler* | awk '{FS=" "; print $9 " " $10 " " $11}')
ip-10.0.1.100:3260-iscsi-iqn.2006-01.com.openfiler:racdb.crs1-lun-0 -> ../../sdc
ip-10.0.1.100:3260-iscsi-iqn.2006-01.com.openfiler:racdb.crs2-lun-0 -> ../../sdd
ip-10.0.1.100:3260-iscsi-iqn.2006-01.com.openfiler:racdb.crs3-lun-0 -> ../../sde
ip-10.0.1.100:3260-iscsi-iqn.2006-01.com.openfiler:racdb.data1-lun-0 -> ../../sdf
ip-10.0.1.100:3260-iscsi-iqn.2006-01.com.openfiler:racdb.data2-lun-0 -> ../../sdg
ip-10.0.1.100:3260-iscsi-iqn.2006-01.com.openfiler:racdb.data3-lun-0 -> ../../sdh
ip-10.0.1.100:3260-iscsi-iqn.2006-01.com.openfiler:racdb.fra1-lun-0 -> ../../sdi
ip-10.0.1.100:3260-iscsi-iqn.2006-01.com.openfiler:racdb.fra2-lun-0 -> ../../sdj
ip-10.0.1.100:3260-iscsi-iqn.2006-01.com.openfiler:racdb.fra3-lun-0 -> ../../sdk

十、安裝udev設備管理器(rac_udev創建磁盤方式安裝grid)
#yum install -y udev
查看磁盤串號

-----------------------------------------------------------------------------------------------------------------
for disk in `ls /dev/sd*`
                  do
                    echo $disk
                    /usr/lib/udev/scsi_id --whitelisted --replace-whitespace --device=$disk
                  done   \\回車
-----------------------------------------------------------------------------------------------------------------
 /dev/sda
/dev/sda1
/dev/sda2
/dev/sdb
/dev/sdb1
/dev/sdc
14f504e46494c45527763443337452d557347312d514f3049
/dev/sdd
14f504e46494c4552715837527a472d78444f522d6e6b5774
/dev/sde
14f504e46494c45523045727559352d706674422d43666c59
/dev/sdf
14f504e46494c455262664b78684c2d51796e512d30464179
/dev/sdg
14f504e46494c45526c36533367792d6a6265712d45705648
/dev/sdh
14f504e46494c45524159783651312d4a4554742d4f74776f

在兩個 Oracle RAC 節點:
映射關聯磁盤

#vim /etc/udev/rules.d/99-oracle-asmdevices.rules
KERNEL=="sd?", ENV{ID_SERIAL}=="14f504e46494c45527763443337452d557347312d514f3049", SYMLINK+="asm_ocr_1_1",  OWNER="grid",  GROUP="asmadmin", MODE="0660"
KERNEL=="sd?", ENV{ID_SERIAL}=="14f504e46494c4552715837527a472d78444f522d6e6b5774", SYMLINK+="asm_ocr_1_2",  OWNER="grid",  GROUP="asmadmin", MODE="0660"
KERNEL=="sd?", ENV{ID_SERIAL}=="14f504e46494c45523045727559352d706674422d43666c59", SYMLINK+="asm_data_1_1",  OWNER="grid",  GROUP="asmadmin", MODE="0660"
KERNEL=="sd?", ENV{ID_SERIAL}=="14f504e46494c455262664b78684c2d51796e512d30464179", SYMLINK+="asm_data_1_2",  OWNER="grid",  GROUP="asmadmin", MODE="0660"
KERNEL=="sd?", ENV{ID_SERIAL}=="14f504e46494c45526c36533367792d6a6265712d45705648", SYMLINK+="asm_fra_1_1",  OWNER="grid",  GROUP="asmadmin", MODE="0660"
KERNEL=="sd?", ENV{ID_SERIAL}=="14f504e46494c45524159783651312d4a4554742d4f74776f", SYMLINK+="asm_fra_1_2",  OWNER="grid",  GROUP="asmadmin", MODE="0660"

加載rules文件(rac_udev創建磁盤方式安裝grid)
#udevadm control --reload-rules
#udevadm trigger

十一、查看關聯路徑狀況

#ls -l /dev/asm*
lrwxrwxrwx. 1 root root 3 12月 26 17:30 /dev/asm_data_1_1 -> sdf
lrwxrwxrwx. 1 root root 3 12月 26 17:30 /dev/asm_data_1_2 -> sdg
lrwxrwxrwx. 1 root root 3 12月 26 17:30 /dev/asm_fra_1_1 -> sdh
lrwxrwxrwx. 1 root root 3 12月 26 17:30 /dev/asm_fra_1_2 -> sdi
lrwxrwxrwx. 1 root root 3 12月 26 17:30 /dev/asm_ocr_1_1 -> sdc
lrwxrwxrwx. 1 root root 3 12月 26 17:30 /dev/asm_ocr_1_2 -> sdd
lrwxrwxrwx. 1 root root 3 1月   8 14:00 /dev/asm_ocr_1_3 -> sde

4、建立任務角色劃分操做系統權限組、用戶和目錄

一、建立用戶:

groupadd -g 1000 oinstall  
groupadd -g 1200 asmadmin  
groupadd -g 1201 asmdba  
groupadd -g 1202 asmoper  
groupadd -g 1300 dba  
groupadd -g 1301 oper

二、建立組:

useradd -u 1100 -g oinstall -G asmadmin,asmdba,asmoper grid  
useradd -u 1101 -g oinstall -G dba,oper,asmdba oracle

三、建立密碼:
passwd grid
passwd oracle
四、設置互信關係,這裏記住oracle和grid用戶都要設置互信
#su - grid
$ mkdir ~/.ssh(有則不建立)
兩個節點執行如下操做
ssh-keygen -t rsa
ssh-keygen -t dsa
這裏一步一步直接回車的
rhel7.4安裝oracle 11G 11.2.0.4.0 RAC

如下操做在一個節點上執行便可(id_rsa是密鑰,id_rsa.pub是公鑰)
cat ~/.ssh/id_rsa.pub >> ./.ssh/authorized_keys --公鑰存在authorized_keys文件中,寫到本機
cat ~/.ssh/id_dsa.pub >> ./.ssh/authorized_keys
ssh redhat-214 cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys --第二個節點的公鑰寫到本機
ssh redhat-214 cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys
rhel7.4安裝oracle 11G 11.2.0.4.0 RAC
rhel7.4安裝oracle 11G 11.2.0.4.0 RAC
scp ~/.ssh/authorized_keys secdb2:~/.ssh/authorized_keys
rhel7.4安裝oracle 11G 11.2.0.4.0 RAC
兩個節點上分別驗證
ssh redhat-212 date
ssh redhat-214 date
ssh raca-priv date
ssh racb-priv date

#su - oracle
兩個節點執行如下操做:
ssh-keygen -t rsa
ssh-keygen -t dsa
rhel7.4安裝oracle 11G 11.2.0.4.0 RAC
如下操做在一個節點上執行便可
cat ~/.ssh/id_rsa.pub >> ./.ssh/authorized_keys --公鑰存在authorized_keys文件中,寫到本機
cat ~/.ssh/id_dsa.pub >> ./.ssh/authorized_keys
ssh redhat-214 cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys --第二個節點的公鑰寫到本機
ssh redhat-214 cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys
rhel7.4安裝oracle 11G 11.2.0.4.0 RAC
scp ~/.ssh/authorized_keys redhat-214:~/.ssh/authorized_keys --上傳本機公鑰到第二個節點管理
rhel7.4安裝oracle 11G 11.2.0.4.0 RAC
兩個節點上分別驗證
ssh redhat-212 date
ssh redhat-214 date
ssh raca-priv date
ssh racb-priv date

五、爲grid用戶設置環境變量
以下操做也須要在兩個節點上一樣進行,這裏須要注意的是grid用戶的SID和oracle用戶的SID,是不同的,這裏你們明白原理的話就不會出錯。
以 grid 用戶賬戶分別登陸到兩個 Oracle RAC 節點並建立如下登陸腳本 (.bash_profile):
注: 在爲每一個 Oracle RAC 節點設置 Oracle 環境變量時,確保爲每一個 RAC 節點指定惟一的 Oracle SID。對於此示例,我使用:
racnode1:ORACLE_SID=+ASM1
racnode2:ORACLE_SID=+ASM2
Node1:

[root@racnode1 ~]# su - grid
vi .bash_profile
export TMP=/tmp  
export TMPDIR=$TMP  
export ORACLE_SID=+ASM1  
export ORACLE_BASE=/u01/grid  
export ORACLE_HOME=/u01/app/grid/11.2.0  
export NLS_DATE_FORMAT='yyyy/mm/dd hh24:mi:ss'  
export TNS_ADMIN=$ORACLE_HOME/network/admin  
export PATH=/usr/sbin:$PATH  
export PATH=$ORACLE_HOME/bin:$PATH  
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib  
export CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib
export LANG=en_US
export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK 
umask 022

Node2:

#su - grid
vi .bash_profile
export TMP=/tmp  
export TMPDIR=$TMP  
export ORACLE_SID=+ASM2  
export ORACLE_BASE=/u01/grid  
export ORACLE_HOME=/u01/app/grid/11.2.0  
export NLS_DATE_FORMAT='yyyy/mm/dd hh24:mi:ss'  
export TNS_ADMIN=$ORACLE_HOME/network/admin  
export PATH=/usr/sbin:$PATH  
export PATH=$ORACLE_HOME/bin:$PATH  
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib  
export CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib  
export LANG=en_US  
export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK  
umask 022

六、爲 oracle 用戶設置環境變量
以 oracle 用戶賬戶分別登陸到兩個 Oracle RAC 節點並建立如下登陸腳本 (.bash_profile):
注: 在爲每一個 Oracle RAC 節點設置 Oracle 環境變量時,確保爲每一個 RAC 節點指定惟一的 Oracle SID。對於此示例,我使用:
racnode1:ORACLE_SID=orcl1
racnode2:ORACLE_SID=orcl2

#su - oracle
vi .bash_profile
export TMP=/tmp  
export TMPDIR=$TMP  
export ORACLE_HOSTNAME=rac1  
export ORACLE_SID=orcl1  
export ORACLE_BASE=/u01/app/oracle  
export ORACLE_HOME=/u01/app/oracle/product/11.2.0/dbhome_1  
export ORACLE_UNQNAME=orcl  
export TNS_ADMIN=$ORACLE_HOME/network/admin  
#export ORACLE_TERM=xterm  
export PATH=/usr/sbin:$PATH  
export PATH=$ORACLE_HOME/bin:$PATH  
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib  
export CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib  
export LANG=en_US  
export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK  
export NLS_DATE_FORMAT='yyyy/mm/dd hh24:mi:ss'  
umask 022

Node2:

#su - oracle
vi .bash_profile
export TMP=/tmp  
export TMPDIR=$TMP  
export ORACLE_HOSTNAME=rac2  
export ORACLE_SID=orcl2  
export ORACLE_BASE=/u01/app/oracle  
export ORACLE_HOME=/u01/app/oracle/product/11.2.0/dbhome_1  
export ORACLE_UNQNAME=orcl  
export TNS_ADMIN=$ORACLE_HOME/network/admin  
#export ORACLE_TERM=xterm  
export PATH=/usr/sbin:$PATH  
export PATH=$ORACLE_HOME/bin:$PATH  
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib  
export CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib  
export LANG=en_US  
export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK  
export NLS_DATE_FORMAT='yyyy/mm/dd hh24:mi:ss'  
umask 022

七、建立 Oracle 基目錄路徑
最後一步是配置 Oracle 基路徑,要遵循最佳靈活體系結構 (OFA) 的結構及正確的權限。須要以 root 用戶身份在集羣的兩個 Oracle RAC 節點上完成此任務。
本指南假設在根文件系統中建立 /u01 目錄。請注意,這樣作是爲了簡便起見,不建議將其做爲通用作法。一般會將 /u01 目錄做爲配置了硬件或軟件鏡像功能的單獨文件系統供應。
#mkdir -p /u01/grid
#mkdir -p /u01/app/grid/11.2.0
#chown -R grid:oinstall /u01
#mkdir -p /u01/app/oracle
#chown oracle:oinstall /u01/app/oracle
#chmod -R 775 /u01
八、爲 Oracle 軟件安裝用戶設置資源限制:
8.1 在每一個 Oracle RAC 節點上,在 /etc/security/limits.conf 文件中添加如下幾行代碼(下面的示例顯示軟件賬戶全部者 oracle 和 grid):

#vi /etc/security/limits.conf
grid soft nproc 2047
grid hard nproc 16384
grid soft nofile 1024
grid hard nofile 65536

oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536

或下面加了stack最大棧大小,通常我使用都是上面多些
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
oracle soft stack 10240
oracle hard stack 32768

grid soft nproc 2047
grid hard nproc 16384
grid soft nofile 1024
grid hard nofile 65536
grid soft stack 10240
grid hard stack 32768

8.2 在每一個 Oracle RAC 節點上,在 /etc/pam.d/login 文件中添加或編輯下面一行內容(若是不存在此行):

#vi /etc/pam.d/login
session    required     pam_limits.so

8.3 修改內核參數

#vim /etc/sysctl.conf 
fs.aio-max-nr = 1048576  
fs.file-max = 6815744  
kernel.shmall = 1073741824  
kernel.shmmax = 4398046511104  
kernel.shmmni = 4096  
kernel.sem = 250 32000 100 128  
net.ipv4.ip_local_port_range = 9000 65500  
net.core.rmem_default = 262144  
net.core.rmem_max = 4194304  
net.core.wmem_default = 262144  
net.core.wmem_max = 1048576

使sysctl生效
#sysctl -p
8.3 安裝相關的開發工具包

#yum -y install glibc \
glibc-devel \
glibc-headers \
libaio \
libaio-devel \
libgcc \
libstdc++ \
libstdc++-devel \
make \
sysstat \
unixODBC \
unixODBC-devel \
pdksh \
compat-libcap1 \
compat-libstdc++-33 \
elfutils-libelf-devel \
gcc \
gcc-c++ \
smartmontools \
pdksh \
compat-libstdc \
cvuqdisk

九、RHEL 7 安裝oracle rac 11.2.0.4執行root.sh報錯ohasd failed to start
報錯緣由:
由於RHEL 7使用systemd而不是initd運行進程和重啓進程,而root.sh經過傳統的initd運行ohasd進程。

9.一、 解決方法:
在RHEL 7中ohasd須要被設置爲一個服務,在運行腳本root.sh以前。
以root用戶建立服務文件
#touch /usr/lib/systemd/system/ohas.service
#chmod 777 /usr/lib/systemd/system/ohas.service

9.二、 將如下內容添加到新建立的ohas.service文件中

#vim /usr/lib/systemd/system/ohas.service
[Unit]
Description=Oracle High Availability Services
After=syslog.target

[Service]
ExecStart=/etc/init.d/init.ohasd run >/dev/null 2>&1 Type=simple
Restart=always

[Install]
WantedBy=multi-user.target

9.三、以root用戶運行下面的命令
#systemctl daemon-reload
#systemctl enable ohas.service
#systemctl start ohas.service

9.四、查看運行狀態
#systemctl status ohas.service

5、安裝GI集羣軟件

一、鏈接操做中的 Xmanager
#su - grid
$ cd /home/grid/
$ unzip p13390677_112040_Linux-x86-64_3of7.zip

#yum install xhost + -y
#su - grid
$ export DISPLAY=ip:0.0 //ip爲你本機ip
$ xhost +
$ export LANG=en_US
$ ./runInstaller

若須要添加中文語言包
#mkdir -p /usr/share/fonts/zh_CN/TrueType
將zysong.ttf文件放至/usr/share/fonts/zh_CN/TrueType目錄中

二、安裝截圖
出來下面安裝界面,選擇最下面的Skip software updates,而後選next
rhel7.4安裝oracle 11G 11.2.0.4.0 RAC
選擇第一個安裝和配置集羣環境,next
rhel7.4安裝oracle 11G 11.2.0.4.0 RAC
選擇第二個高級安裝,next
rhel7.4安裝oracle 11G 11.2.0.4.0 RAC
選上添加簡體中文,next
rhel7.4安裝oracle 11G 11.2.0.4.0 RAC
此處集羣名本身取,SCAN名須要和/etc/hosts中的scan ip別名一致,端口默認,不選GNS,next
rhel7.4安裝oracle 11G 11.2.0.4.0 RAC
添加busrac2節點
rhel7.4安裝oracle 11G 11.2.0.4.0 RAC
點next(上面設置互信關係必定執行過,否則這一步若是next會出錯的)
rhel7.4安裝oracle 11G 11.2.0.4.0 RAC
或若是沒有設置互信關係的話能夠點SSH Connectivity,輸入grid用戶的密碼(注兩點節點grid用戶與密碼要一致),在點setup,最後next
rhel7.4安裝oracle 11G 11.2.0.4.0 RAC
rhel7.4安裝oracle 11G 11.2.0.4.0 RAC
這裏只須要確認一下網絡接口,安裝嚮導已經把咱們填寫,next(這裏是自動識別到你服務器上IP是哪段的)
rhel7.4安裝oracle 11G 11.2.0.4.0 RAC
存儲選擇:選擇ASM,next
rhel7.4安裝oracle 11G 11.2.0.4.0 RAC
這裏讓咱們建立asm disk group,給一個名字「ORC",創建OCR盤,選擇3塊盤 next(這裏要求至少3塊盤的,這裏圖片只是參考的;有時候會找不到盤,能夠試從新執行加載rules文件(rac_udev創建磁盤方式安裝grid))
rhel7.4安裝oracle 11G 11.2.0.4.0 RAC
rhel7.4安裝oracle 11G 11.2.0.4.0 RAC
設置密碼:next
rhel7.4安裝oracle 11G 11.2.0.4.0 RAC
這裏選擇第二項不使用IPMI
rhel7.4安裝oracle 11G 11.2.0.4.0 RAC
給ASM指定不一樣的組,next
rhel7.4安裝oracle 11G 11.2.0.4.0 RAC
這裏安裝嚮導會幫你填寫集羣軟件的安裝路徑,咱們繼續next,這裏咱們須要注意的是oracle_Home不能是oracle_base的子目錄
rhel7.4安裝oracle 11G 11.2.0.4.0 RAC
rhel7.4安裝oracle 11G 11.2.0.4.0 RAC
rhel7.4安裝oracle 11G 11.2.0.4.0 RAC
以root身份執行腳本:root用戶執行兩個腳本,一個節點執行完後再執行第二個節點(root.sh執行可能會長一點)
rhel7.4安裝oracle 11G 11.2.0.4.0 RAC
咱們會看到這個報錯,其實這個問題我查看了mos知識庫,說的比較含糊,能夠忽略這個錯誤,不影響咱們的安裝和將來的使用
rhel7.4安裝oracle 11G 11.2.0.4.0 RAC
直接finish了,這裏咱們集羣軟件安裝完成。
rhel7.4安裝oracle 11G 11.2.0.4.0 RAC

6、安裝oracle 11.2.0.4軟件

#su - oracle
$ export DISPLAY=ip:0.0 //ip爲你本機ip
$ xhost +
$ export LANG=en_US
$ cd database
$ ./runInstaller
在解壓database運行安裝腳本,這裏和安裝grid同樣,啓動安裝嚮導
咱們不填寫mos帳號,又不聯網沒意義,點擊next,這裏咱們仍是在rac1節點上安裝
rhel7.4安裝oracle 11G 11.2.0.4.0 RAC
rhel7.4安裝oracle 11G 11.2.0.4.0 RAC
咱們這裏只安裝數據庫軟件,點擊next
rhel7.4安裝oracle 11G 11.2.0.4.0 RAC
這裏選擇集羣安裝方式,有如下3種選項之一:
Single instance database installation(單實例數據庫安裝) 這一選項容許僅在本地節點上安裝單實例數據庫軟件。
Oracle Real Application Cluster database installation(Oracle RAC數據庫安裝) 這一選項容許在集羣中的選定節點上選擇和安裝Oracle RAC二進制文件。
Oracle RAC One Node database installation 這個選項在選定節點上安裝Oracle RAC One Node數據庫二進制文件。
在這個界面上,選擇Oracle Real Application Cluster database installation選項。
選擇「select All」,點擊next
rhel7.4安裝oracle 11G 11.2.0.4.0 RAC
仍是選擇語言爲」English/Simplified Chinese「,點擊next
rhel7.4安裝oracle 11G 11.2.0.4.0 RAC
選擇」Enterprise Edition「 點擊」next「
rhel7.4安裝oracle 11G 11.2.0.4.0 RAC
這裏是oracle_base和oracle_home,點擊next
rhel7.4安裝oracle 11G 11.2.0.4.0 RAC
這個對應到組就能夠了,繼續next
rhel7.4安裝oracle 11G 11.2.0.4.0 RAC
這一步會check你的安裝環境,咱們只要配置參數正確就沒問題,這裏基本上都是succeeded,點擊next(致使這個錯誤的緣由是在/etc/hosts中配置了SCAN的地址,嘗試ping這個地址信息,若是能夠成功,則這個錯誤能夠忽略。我嘗試ping scan ip能夠ping通,因此暫時也就忽略了這個錯誤。)
rhel7.4安裝oracle 11G 11.2.0.4.0 RAC
summary一下,咱們就能夠'install'了
rhel7.4安裝oracle 11G 11.2.0.4.0 RAC
這裏安裝會比較快
rhel7.4安裝oracle 11G 11.2.0.4.0 RAC
出現以下錯誤
rhel7.4安裝oracle 11G 11.2.0.4.0 RAC
查看日誌報錯以下:
#vi /u01/oraInventory/logs/installActions2018-01-10_02-56-55PM.log

INFO: collect2: error: ld returned 1 exit status

INFO: make[1]: *** [/u01/app/oracle/product/11.2.0/dbhome_1/sysman/lib/emdctl] Error 1

INFO: make[1]: Leaving directory `/u01/app/oracle/product/11.2.0/dbhome_1/sysman/lib'

INFO: make: *** [emdctl] Error 2

INFO: End output from spawned process.
INFO: ----------------------------------
INFO: Exception thrown from action: make
Exception Name: MakefileException
Exception String: Error in invoking target 'agent nmhs' of makefile '/u01/app/oracle/product/11.2.0/dbhome_1/sysman/lib/ins_emagent.mk'. See '/u01/oraInventory/logs/installActions2018-01-10_02-56-55PM.log' for details.
Exception Severity: 1

解決方法:
vi $ORACLE_HOME/sysman/lib/ins_emagent.mk

$vi /u01/app/oracle/product/11.2.0/dbhome_1/sysman/lib/ins_emagent.mk
搜索如下行:
$(MK_EMAGENT_NMECTL)
改變爲:
$(MK_EMAGENT_NMECTL) -lnnz11

而後點擊:retry,能夠。
rhel7.4安裝oracle 11G 11.2.0.4.0 RAC
完成後一樣也要執行一個腳本,也是要在root用戶下去執行,分別兩個節點上
rhel7.4安裝oracle 11G 11.2.0.4.0 RAC
至此數據庫軟件已安裝完成。
rhel7.4安裝oracle 11G 11.2.0.4.0 RAC

7、建立ASM磁盤組

一、在安裝GI集羣軟件的時候咱們就配置過asm磁盤,如今咱們還有一個disk分區沒有加入到asm磁盤組中,咱們經過asmca來實現
$ su - grid
$ export DISPLAY=ip:0.0
運行命令asmca,咱們看到下面配置嚮導。這裏能夠看到咱們以前配置過的disk group,咱們點擊create後
rhel7.4安裝oracle 11G 11.2.0.4.0 RAC
來到這裏,咱們給disk group起個名字,選擇redundancy Normal,勾選data_1_1和data_1_2,咱們ok一下
rhel7.4安裝oracle 11G 11.2.0.4.0 RAC
會有一個10秒的等待建立磁盤組,完成後提示成功
rhel7.4安裝oracle 11G 11.2.0.4.0 RAC
選擇redundancy Normal,勾選fra_1_1和fra_1_2,咱們ok一下
rhel7.4安裝oracle 11G 11.2.0.4.0 RAC
rhel7.4安裝oracle 11G 11.2.0.4.0 RAC
這裏咱們就能看到有三個disk group了!!!退出便可。。
rhel7.4安裝oracle 11G 11.2.0.4.0 RAC

8、配置oracle database

咱們直接su - oracle,運行dbca命令來配置數據庫
$ export DISPLAY=IP:0.0
$ export LANG=en_US
$ dbca
rhel7.4安裝oracle 11G 11.2.0.4.0 RAC
來到以下界面後,咱們選擇第一項集羣模式,而後next
rhel7.4安裝oracle 11G 11.2.0.4.0 RAC
這個就不用考慮了,直接選擇create a database,繼續next
rhel7.4安裝oracle 11G 11.2.0.4.0 RAC
這個也是選擇general purpose,繼續next
rhel7.4安裝oracle 11G 11.2.0.4.0 RAC
配置類型選擇admin-managed,Global database name和sid相同爲test,最下面咱們選擇」select all「,而後next
rhel7.4安裝oracle 11G 11.2.0.4.0 RAC
這裏咱們仍是選擇默認推薦的配置,EM和amt都選擇配置,繼續next
rhel7.4安裝oracle 11G 11.2.0.4.0 RAC
把sys、system、dbsnmp都給一個相同的密碼,這裏你本身給吧!!而後next
rhel7.4安裝oracle 11G 11.2.0.4.0 RAC
這裏咱們選擇用存儲類型爲asm,使用omf管理數據文件(這裏的名字是存放數據數據文件路徑名字,自定義)。
rhel7.4安裝oracle 11G 11.2.0.4.0 RAC
我安裝數據庫勾選OEM的時候,這個地方就要輸入ASMSNMP密碼的,設置好後點ok
rhel7.4安裝oracle 11G 11.2.0.4.0 RAC
這裏選擇閃回恢復區,看我的狀況
rhel7.4安裝oracle 11G 11.2.0.4.0 RAC
或是咱們這裏不選擇閃回恢復區,我這裏就不配置了,之後手動改spfile吧!!
rhel7.4安裝oracle 11G 11.2.0.4.0 RAC
不選擇裝sample schemas
rhel7.4安裝oracle 11G 11.2.0.4.0 RAC
或是裝上sample schemas,之後就有數據能夠測試玩一把了!! 繼續next
rhel7.4安裝oracle 11G 11.2.0.4.0 RAC
這裏咱們字符集會有所設置,ZHS16GBK-GBK,國際字符集默認的就行。其它的選項卡沒有特殊配置,在之後均可以去改spfile,咱們繼續next
rhel7.4安裝oracle 11G 11.2.0.4.0 RAC
rhel7.4安裝oracle 11G 11.2.0.4.0 RAC
rhel7.4安裝oracle 11G 11.2.0.4.0 RAC
這個是數據庫的存儲配置頁面,咱們看一下控制文件等等都要開始安裝了,next
rhel7.4安裝oracle 11G 11.2.0.4.0 RAC
繼續finish
rhel7.4安裝oracle 11G 11.2.0.4.0 RAC
rhel7.4安裝oracle 11G 11.2.0.4.0 RAC
等待吧,這個也是比較久的,若是SSD和cpu比較給力,速度基本上10分鐘吧!!
rhel7.4安裝oracle 11G 11.2.0.4.0 RAC
安裝完後,點擊exit
rhel7.4安裝oracle 11G 11.2.0.4.0 RAC
咱們就退出安裝配置嚮導了!!!

9、檢查

一、檢查crs資源狀態

[grid@redhat212 ~]$ crs_stat -t
Name           Type           Target    State     Host        
------------------------------------------------------------
ora.DATADB.dg  ora....up.type ONLINE    ONLINE    redhat212   
ora.FRA.dg     ora....up.type ONLINE    ONLINE    redhat212   
ora....ER.lsnr ora....er.type ONLINE    ONLINE    redhat212   
ora....N1.lsnr ora....er.type ONLINE    ONLINE    redhat212   
ora.ORC.dg     ora....up.type ONLINE    ONLINE    redhat212   
ora.asm        ora.asm.type   ONLINE    ONLINE    redhat212   
ora.cvu        ora.cvu.type   ONLINE    ONLINE    redhat212   
ora.gsd        ora.gsd.type   OFFLINE   OFFLINE               
ora....network ora....rk.type ONLINE    ONLINE    redhat212   
ora.oc4j       ora.oc4j.type  ONLINE    ONLINE    redhat212   
ora.ons        ora.ons.type   ONLINE    ONLINE    redhat212   
ora.orcl.db    ora....se.type ONLINE    ONLINE    redhat212   
ora....SM1.asm application    ONLINE    ONLINE    redhat212   
ora....12.lsnr application    ONLINE    ONLINE    redhat212   
ora....212.gsd application    OFFLINE   OFFLINE               
ora....212.ons application    ONLINE    ONLINE    redhat212   
ora....212.vip ora....t1.type ONLINE    ONLINE    redhat212   
ora....SM2.asm application    ONLINE    ONLINE    redhat214   
ora....14.lsnr application    ONLINE    ONLINE    redhat214   
ora....214.gsd application    OFFLINE   OFFLINE               
ora....214.ons application    ONLINE    ONLINE    redhat214   
ora....214.vip ora....t1.type ONLINE    ONLINE    redhat214   
ora.scan1.vip  ora....ip.type ONLINE    ONLINE    redhat212

咱們看到ora.gsd、ora.214(RAC2).gsd是offline狀態,其實兩個進程對咱們的數據庫是沒有任何影響的,咱們把他們打開就好了
二、查看節點的狀態

[grid@redhat212 ~]$ srvctl status nodeapps -n redhat212
VIP redhat212-vip is enabled
VIP redhat212-vip is running on node: redhat212
Network is enabled
Network is running on node: redhat212
GSD is disabled
GSD is not running on node: redhat212
ONS is enabled
ONS daemon is running on node: redhat212

三、開啓節點

[grid@redhat212 ~]$ srvctl enable nodeapps
PRKO-2415 : VIP is already enabled on node(s): redhat212,redhat214
PRKO-2416 : Network resource is already enabled.
PRKO-2417 : ONS is already enabled on node(s): redhat212,redhat214
開節點後在查看節點應用程序狀態
[grid@redhat212 ~]$ srvctl status nodeapps
VIP redhat212-vip is enabled
VIP redhat212-vip is running on node: redhat212
VIP redhat214-vip is enabled
VIP redhat214-vip is running on node: redhat214
Network is enabled
Network is running on node: redhat212
Network is running on node: redhat214
GSD is enabled
GSD is not running on node: redhat212
GSD is not running on node: redhat214
ONS is enabled
ONS daemon is running on node: redhat212
ONS daemon is running on node: redhat214

四、啓動節點

$ srvctl start nodeapps
PRKO-2421 : Network resource is already started on node(s): redhat212,redhat214
PRKO-2420 : VIP is already started on node(s): redhat212
PRKO-2420 : VIP is already started on node(s): redhat214
PRKO-2422 : ONS is already started on node(s): redhat212,redhat214

五、咱們在來查看一下全部的組件是否online

$ crs_stat -t
Name           Type           Target    State     Host        
------------------------------------------------------------
ora.DATADB.dg  ora....up.type ONLINE    ONLINE    redhat212   
ora.FRA.dg     ora....up.type ONLINE    ONLINE    redhat212   
ora....ER.lsnr ora....er.type ONLINE    ONLINE    redhat212   
ora....N1.lsnr ora....er.type ONLINE    ONLINE    redhat212   
ora.ORC.dg     ora....up.type ONLINE    ONLINE    redhat212   
ora.asm        ora.asm.type   ONLINE    ONLINE    redhat212   
ora.cvu        ora.cvu.type   ONLINE    ONLINE    redhat212   
ora.gsd        ora.gsd.type   ONLINE   ONLINE   redhat212               
ora....network ora....rk.type ONLINE    ONLINE    redhat212   
ora.oc4j       ora.oc4j.type  ONLINE    ONLINE    redhat212   
ora.ons        ora.ons.type   ONLINE    ONLINE    redhat212   
ora.orcl.db    ora....se.type ONLINE    ONLINE    redhat212   
ora....SM1.asm application    ONLINE    ONLINE    redhat212   
ora....12.lsnr application    ONLINE    ONLINE    redhat212   
ora....212.gsd application    ONLINE   ONLINE    redhat212             
ora....212.ons application    ONLINE    ONLINE    redhat212   
ora....212.vip ora....t1.type ONLINE    ONLINE    redhat212   
ora....SM2.asm application    ONLINE    ONLINE    redhat214   
ora....14.lsnr application    ONLINE    ONLINE    redhat214   
ora....214.gsd application    ONLINE   ONLINE      redhat214          
ora....214.ons application    ONLINE    ONLINE    redhat214   
ora....214.vip ora....t1.type ONLINE    ONLINE    redhat214   
ora.scan1.vip  ora....ip.type ONLINE    ONLINE    redhat212

咱們這裏安裝完畢!!!

10、關於RAC數據庫與監聽啓動與中止命令

grid和oracle用戶均可以執行,在其中一個節點執行便可:
一、RAC監聽啓停:
$ srvctl status listener #檢查TNS listener的狀態
$ srvctl config listener -a #檢查TNS listener的配置
$ srvctl start listener #開啓監聽
$ srvctl stop listener #停掉監聽
$ srvctl stop listener -n redhat212 #停掉指定節點監聽
$ srvctl start listener -n redhat212 #啓動指定節點監聽

例子:
RAC啓動數據庫監聽,進入grid用戶來啓停端口
#su - grid
$ srvctl start|stop|status listener

二、RAC啓停數據庫:
srvctl status database -d RAC # 檢查數據庫的狀態
rhel7.4安裝oracle 11G 11.2.0.4.0 RAC
srvctl status instance -d RAC -i rac1 #檢查指定實例的狀態
srvctl start database -d orcl # 啓動數據庫
srvctl stop database -d orcl # 關閉數據庫
srvctl start instance -d orcl -i orcl1 # 啓動指定的實例
srvctl stop instance -d orcl -i orcl2 # 關閉指定實例

例子:在nodes1上關閉一個實例,分別查看兩個節點狀態
rhel7.4安裝oracle 11G 11.2.0.4.0 RAC
rhel7.4安裝oracle 11G 11.2.0.4.0 RAC

或下面方式

RAC啓動數據庫,進入oracle用戶
#su - oracle
$ sqlplus sys/****  as sysdba 
SQL> select status from v$instance;  //查看數據庫狀態
SQL>startup;  //啓動數據庫
SQL>shutdown immediate;  //停數據庫

11、添加表空間步驟:

ssh root 進入 192.168.1.212 
su  - oracle
source .bash_profile
sqlplus /nolog
connect /as sysdba

建立表空間:
SQL>CREATE SMALLFILE TABLESPACE "TEST" DATAFILE '+DATADB/ORCL/DATAFILE/test001.dbf' SIZE 1024M AUTOEXTEND ON NEXT 500M MAXSIZE UNLIMITED LOGGING EXTENT MANAGEMENT LOCAL SEGMENT SPACE MANAGEMENT AUTO;

添加TEST表空間中的存儲test001.dbf文件在ASM的+DATADB/ORCL/DATAFILE/目錄下,初始大小爲1G,自動500MB擴展不作限制。

增長表空間:
alter tablespace CP_TM add datafile '+DATADB/orcl/datafile/cp_tm_08.dbf' size 20480M; RAC方式給CP_TM表空間增長cp_tm_08.dbf數據文件大小爲20G。

alter tablespace CP_TM add datafile  +DATADB/orcl/datafile/cp_tm_09.dbf' size 10240M autoextend on next 50m maxsize 20480;  
RAC增長表空間cp_tm_-09.dbf初始爲10G,按50M增長最大到20G。

12、語法簡匯

集羣信息grid和oracle用戶均可以執行
10.一、數據庫與實例:

列出全部的配置數據庫
$ srvctl config database

檢查數據庫相關的信息 (-d參數後面是您server_name)
$ srvctl config database -d orcl -a

$ srvctl config database -d orcl -t
rhel7.4安裝oracle 11G 11.2.0.4.0 RAC

srvctl status database -d RAC # 檢查數據庫的狀態
srvctl status instance -d RAC -i rac1 #檢查指定實例的狀態
srvctl start database -d rac # 啓動數據庫
srvctl stop database -d rac # 關閉數據庫
srvctl start instance -d rac -i rac1 # 啓動指定的實例
srvctl stop instance -d rac -i rac2 # 關閉指定實例

ASM狀態
$ srvctl status asm
ASM配置
$ srvctl status asm -a

10.二、網絡相關的命令
TNS監聽器狀態以及配置
$ srvctl status listener #檢查TNS listener的狀態
$ srvctl config listener -a #檢查TNS listener的配置
$ srvctl start listener #開啓監聽
$ srvctl stop listener #停掉監聽
$ srvctl stop listener -n redhat212 #停掉指定節點監聽
$ srvctl start listener -n redhat212 #啓動指定節點監聽

SRVCTL的參數-n 實例節點名,不是實例sid

查看某個節點ASM信息
srvctl config listener -n node2
rhel7.4安裝oracle 11G 11.2.0.4.0 RAC

SCAN狀態以及配置
$ srvctl status scan
$ srvctl config scan

VIP各個節點的狀態以及配置
$ srvctl status vip -n rac1
$ srvctl status vip -n rac2

$ srvctl config vip -n rac1
$ srvctl config vip -n rac2

節點應用程序配置(VIP、GSD、ONS、監聽器)
$ srvctl config nodeapps -a -g-s -l

10.三、查看集羣狀態(nodeapps節點應用程序,ASM實例,數據庫等)
$ crs_stat -t
狀態檢查也可使用以下命令:
crsctl stat resource –t 或者 crsctl stat resource

番外

這裏還要強調一下11.2.0.1版本的一個bug,就是客戶端沒法經過scan鏈接到數據庫解決方法以下:
[oracle@redhat212 ~]$ sqlplus / as sysdba
SQL*Plus: Release 11.2.0.1.0 Production on Wed Mar 19 11:29:58 2014
Copyright (c) 1982, 2009, Oracle.  All rights reserved.
Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production
With the Partitioning, Real Application Clusters, Automatic Storage Management, OLAP,
Data Mining and Real Application Testing options
SQL> show parameter local_listener

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
local_listener                       string      (DESCRIPTION=(ADDRESS_LIST=(AD
                                                 DRESS=(PROTOCOL=TCP)(HOST=redhat212
                                                 -vip)(PORT=1521))))
SQL> show parameter remot_listener;

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
remote_dependencies_mode             string      TIMESTAMP
remote_listener                      string      clusterscan:1521
remote_login_passwordfile            string      EXCLUSIVE
remote_os_authent                    boolean     FALSE
remote_os_roles                      boolean     FALSE
result_cache_remote_expiration       integer     0
SQL> alter system set local_listener='(DESCRIPTION=(ADDRESS_LIST=(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.216)(PORT = 1521))))' sid='orcl1';    

System altered.

SQL> alter system set remote_listener='clusterscan:1521';

System altered.

SQL> alter system register;

System altered.

最後配置客戶端tnsname.ora文件指向scan listener

#tnsnames.ora.rac1 Network Configuration File: /u01/app/11.2.0/grid/network/admin/tnsnames.ora.rac1
#Generated by Oracle configuration tools.
ORCL =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.216)(PORT = 1521))
    )
    (CONNECT_DATA =
      (SERVICE_NAME = orcl)
    )
  )
相關文章
相關標籤/搜索