Oracle ASM 空間設定與建置

Oracle ASM 空間設定與建置
  • 使用root帳號建執行oracleasm configure -i 指令設定ASM(兩個NODE都需要執行)
#oracleasm configure –i  #####此指令是互動模式如下圖所示













  • 使用root帳號建執行oracleasm init指令初始化ASM目錄(兩個NODE都需要執行)
# oracleasm init







Storage的空間規畫下表所示
磁碟磁碟分區大小ASM Disk用途
/dev/mapper/dma
dmap120Gcrs1存放ocr & voting
dmap220Gcrs2存放ocr & voting
dmap320Gcrs3存放ocr & voting
dmap46Tdata1存放資料庫data
/dev/mapper/dmb
dmbp120Gcrs4與crs1作mirror
dmbp220Gcrs5與crs2作mirror
dmbp320Gcrs6與crs3作mirror
dmbp46Tdata2與data1作mirror
實體disk 分區如下圖所示














  • 使用root帳號對磁碟分區進行ASM Disk建置,語法
#oracleasm createdisk crs1 /dev/mapper/dmap1 執行結果如下所示
























  • 使用root帳號執行oracleasm scandisks指令對ASM DISK進行scan,指令如下(兩個NODE都需要執行)
#oracleasm scandisks













Oracle Grid Infrastructure 事前準備

Oracle Grid Infrastructure 事前準備
  • 使用root帳號,確認preinstall,指令如下(兩個NODE都需要執行)
# rpm -qa | grep 12c
# rpm –qa | grep asm
  • 使用root帳號,新增/etc/hosts內如,如下所示(兩個NODE都需要執行)
###########Public ips############################################
101.21.17.51          dbs1.localdomain  dbs1
101.21.17.52          dbs2.localdomain  dbs2
###########Private ips############################################
192.168.0.121        dbs1-priv.localdomain     dbs1-priv
192.168.0.122        dbs2-priv.localdomain     dbs2-priv
###########Virtual ips############################################
101.21.17.53          dbs1-vip.localdomain      dbs1-vip
101.21.17.54          dbs2-vip.localdomain      dbs2-vip
###########scan ips############################################
101.16.20.55          dbs.test.com  dbs
/etc/hosts內的設定如下圖所示















  • 使用root帳號,修改/etc/security/limits.d/90-nproc.conf內nproc參數設定為16384 ,如下所示(兩個NODE都需要執行)









  • 使用root帳號,修改/etc/selinux/config內SELINUX參數設定為disabled ,如下所示(兩個NODE都需要執行)









  • 使用root帳號,如果有將Linux Firewll開啟,將需要將其停止,指令如下(兩個NODE都需要執行)
# service iptables stop
# chkconfig iptables off
  • 使用root帳號,將NTP對時停止指令如下(兩個NODE都需要執行)
# service ntpd stop
# mv /etc/ntp.conf /etc/ntp.conf.orig
# rm /var/run/ntpd.pid
  • 使用root帳號在/etc/sysctl.conf內最後新增以下參數(兩個NODE都需要執行)
fs.file-max = 6815744
kernel.sem = 250 32000 100 128
kernel.shmmni = 4096
kernel.shmall = 1073741824
kernel.shmmax = 4398046511104
kernel.panic_on_oops = 1
net.core.rmem_default = 262144
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 1048576
fs.aio-max-nr = 1048576
net.ipv4.ip_local_port_range = 9000 65500
如下圖所示

















  • 使用root帳號在/etc/security/limits.conf內最後新增以下參數(兩個NODE都需要執行)
# grid soft nofile 1024
# grid hard nofile 65536
# grid soft nproc 2047
# grid hard nproc 16384
# grid soft stack 10240
# grid hard stack 32768
  • 使用root帳號在/etc/resolv.conf內最後新增以下參數(兩個NODE都需要執行)
search localdomain
  • 使用root帳號將dnsmasq重啟指令如下(兩個NODE都需要執行)
# service dnsmasq restart
  • 使用root帳號將oracle和相關group刪除指令如下(兩個NODE都需要執行)
# userdel oracle
# rm -rf /home/oracle
# rm -rf /var/mail/oracle
# groupdel oinstall
# groupdel dba
  • 使用root帳號將grid和相關group刪除指令如下(兩個NODE都需要執行)
# groupadd -g 1000 oinstall
# groupadd -g 1010 dba
# groupadd -g 1020 asmadmin
# groupadd -g 1030 asmdba
  • 使用root帳號建置grid帳號及相關group與路徑指令如下(兩個NODE都需要執行)
# useradd -u 1100 -g oinstall -G asmadmin,asmdba grid
# mkdir -p /u01/app/12.1.0/grid ####此路徑是grid home
# mkdir -p /u01/app/grid ######此路徑是grid base
# chown -R grid:oinstall /u01
# passwd grid       #####注意兩個node的password要一樣
  • 使用grid帳號在/home/grid/.bash_profile新增環境變數(兩個NODE都需要執行)
export ORACLE_HOME=/u01/app/12.1.0/grid
export ORACLE_SID=+ASM1              ###########node2 的設定為 +ASM2
export PATH=$ORACLE_HOME/bin:$PATH
export ORACLE_BASE=/u01/app/grid
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib
Export
CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib
如下圖所示

















  • 使用root帳號建置oracle帳號及相關group與路徑指令如下(兩個NODE都需要執行)
# useradd -u 1101 -g oinstall -G dba,asmdba oracle
# mkdir -p /u01/app/oracle/product/12.1.0 ######此路徑oracle home
# chown -R oracle:oinstall /u01/app/oracle ######此路徑oracle base
# chmod -R 775 /u01
# passwd oracle      #####注意兩個node的password最好要相同
使用oracle帳號在/home/oracle/.bash_profile新增環境變數(兩個NODE都需要執行)
export ORACLE_HOME=/u01/app/oracle/product/12.1.0
export ORACLE_SID=db1            ###########node2 的設定為 db2
export PATH=$ORACLE_HOME/bin:$PATH
export ORACLE_BASE=/u01/app/oracle
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib
export CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib








12c RAC安裝前作業系統準備

一、Oracle RAC 安裝步驟

  • 作業系統版本: Oracle Linux 7
  • Oracle Grid Infrastructure版本: 12.1.0.2
  • Oracle資料庫版本: 12.1.0.2
  • Hostname: dbs1/dbs2
  • IP範圍: 101.21.17.51 ~ 101.21.17.55 (192.168.0.121/192.168.0.122 Private IP )
dbs1dbs2備註
Public IP101.21.17.51101.21.17.52外部IP用於提供對外資料服務
Private IP192.168.0.121192.168.0.122內部IP用於節點間的溝通包括network heartbeat等
Virtual IP101.21.17.53101.21.17.54虛擬IP是用於故障切換
Scan IP192.168.2.201提供client端簡化連線設定使用(當多個node時就不需再client端設定每個virtual IP)



二、安裝前作業系統準備
網卡設定:dbs1和dbs2都須各準備兩張網卡
dbs1設定如下
第一張網卡設定如下





















第二張網卡設定如下




















dbs2設定如下
第一張網卡設定如下




















第二張網卡設定如下



















作業系統Package選擇
選擇Basic Server
















Package選項如下所列
1. Base System請選擇如下圖所示


















2. Servers選擇Server PlatformSystem administration tools,且勾選System administration toolsoracle-rdbms-server-12cR1-preinstall-1.0-12.el6x86_64oracleasm-support-2.1.8-1-l.el6.x86_64,如下圖所示



















3. Desktops選項如下圖













4. Applications選項如下圖所示















5. Development選項如下圖所示














當作業系統安裝完後可使用yum確認相關的package是否安裝
完整,指令如下
yum install binutils -y
yum install compat-libcap1 -y
yum install compat-libstdc++-33 -y
yum install compat-libstdc++-33.i686 -y
yum install gcc -y
yum install gcc-c++ -y
yum install glibc -y
yum install glibc.i686 -y
yum install glibc-devel -y
yum install glibc-devel.i686 -y
yum install ksh -y
yum install libgcc -y
yum install libgcc.i686 -y
yum install libstdc++ -y
yum install libstdc++.i686 -y
yum install libstdc++-devel -y
yum install libstdc++-devel.i686 -y
yum install libaio -y
yum install libaio.i686 -y
yum install libaio-devel -y
yum install libaio-devel.i686 -y
yum install libXext -y
yum install libXext.i686 -y
yum install libXtst -y
yum install libXtst.i686 -y
yum install libX11 -y
yum install libX11.i686 -y
yum install libXau -y
yum install libXau.i686 -y
yum install libxcb -y
yum install libxcb.i686 -y
yum install libXi -y
yum install libXi.i686 -y
yum install make -y
yum install sysstat -y
yum install unixODBC -y
yum install unixODBC-devel -y
確認兩台SERVER的日期時間相同