程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> JAVA編程 >> JAVA綜合教程 >> 牛刀小試Oracle之ORACLE 11GR2 RAC安裝配置--先決配置階段

牛刀小試Oracle之ORACLE 11GR2 RAC安裝配置--先決配置階段

編輯:JAVA綜合教程

牛刀小試Oracle之ORACLE 11GR2 RAC安裝配置--先決配置階段


基於VMwarevCenter Server中的Linux RedHat 6.4 安裝Oracle 11GR2 11.2.0.4 RAC集群

1.網絡規劃

其中public和private要劃分到不同的網段。保證安全傳輸

[root@Zracnode1~]# cat /etc/hosts

127.0.0.1 localhost localhost.localdomain localhost4localhost4.localdomain4

::1 localhost localhost.localdomainlocalhost6 localhost6.localdomain6

10.2.13.80 zracnode1

10.2.13.81 zracnode2

10.2.13.82 zracnode1-vip

10.2.13.83 zracnode2-vip

10.2.12.140 zracnode1-priv

10.2.12.141 zracnode2-priv

10.2.13.142 zrac-scan

10.2.13.143 zrac-scan

10.2.13.144 zrac-scan

2.操作系統設置

*.安裝的操作系統是LinuxRedhat 6.4

*.磁盤劃分配置

磁盤目錄

磁盤大小

/

30GB

swap

16GB

/u01

100GB

3.共享磁盤設置

共享磁盤配置有多種方式,nfs,磁盤陣列直接映射劃分,我這裡采用的是通過vmware vCenter server上的共享磁盤技術,操作步驟如下:

3.1. 需要對SCSI 控制器,進行配置。對總線配置為[物理]模式。參數解釋如下:

選項

描述

其他虛擬機不能共享虛擬磁盤。

虛擬

同一台服務器上的虛擬機可以共享虛擬磁盤。

物理

任何服務器上的虛擬機均可共享虛擬磁盤。

3.2 新建SCSI controller 1控制器,並設置相關參數,VmwarevCenter操作頁面如下:

3.3 新建硬盤,硬盤類型為[Thick provision eager zeroed].並且設置virtual Device Node為[SCSI(1:0)].在設置磁盤模式為[Independent-Persistent].操作頁面如下:

3.4 添加已存在磁盤,在ZRAC02節點上面,添加磁盤。操作頁面如下:

4. 安裝RAC

4.1 先決條件

4.1.1 yum配置

掛載鏡像配置yum

mount -oloop -t iso9660 /u01/software/rhel-server-6.4-x86_64-dvd.iso /u01/iso

[root@Zracnode1u01]# cat /etc/yum.repos.d/rhel-source.repo

[Server]

name=Server

baseurl=file:///u01/iso

gpgcheck=0

gpgkey=file:///u01/iso/RPM-GPG-KEY-redhat-release

4.1.2 vnc配置

VNC在Linux上的安裝

#yuminstall tigervnc-server

#vncserver #該命令在服務器端啟動一個VNC進程。允許一個

VNC View連接進來;如果需要多個View連接到服務器,需要多次執行上述命令;

Password: # 為了不想任何人都可以任意遙控此計算機。因此當第1次啟動VNC server時,會要求設置網絡遙控的密碼。

Verify: # 驗證密碼;

進入root主目錄下的.vnc隱含目錄, 找到 xstartup文件並編輯:

# cd/root/.vnc

# vi xstartup

# twm& (注釋掉該行)

startkde& (添加該行)

# killallXvnc

#vncserver

4.2 配置/etc/hosts文件(所有節點)

[root@rac01network-scripts]# vi /etc/hosts

127.0.0.1 localhost localhost.localdomain localhost4localhost4.localdomain4

::1 localhost localhost.localdomainlocalhost6 localhost6.localdomain6

10.2.13.80 Zracnode1

10.2.13.81 Zracnode2

10.2.13.82 Zracnode1-vip

10.2.13.83 Zracnode2-vip

10.2.13.140 Zracnode1-priv

10.2.13.141 Zracnode2-priv

10.2.13.142 Zrac-scan

4.3 添加組合用戶(所有節點)

groupadd -g500 oinstall

groupadd -g501 dba

groupadd -g502 oper

groupadd -g503 asmadmin

groupadd -g504 asmoper

groupadd -g505 asmdba

useradd -goinstall -G dba,asmdba,oper oracle

useradd -goinstall -G asmadmin,asmdba,asmoper,oper,dba grid

檢測用戶oracle和grid

[root@rac1~]# id oracle

uid=500(oracle)gid=500(oinstall) groups=500(oinstall),501(dba),502(oper),505(asmdba)

[root@rac1~]# id grid

uid=501(grid)gid=500(oinstall) groups=500(oinstall),501(dba),502(oper),503(asmadmin),504(asmoper),505(asmdba)

對用戶oracle和grid設置密碼

[root@rac1~]# passwd oracle

[root@rac1~]# passwd grid

4.4.建立目錄(所有節點)

mkdir/u01/app

chown -Rgrid:oinstall /u01/app/

chmod -R 775/u01/app/

mkdir -p/u01/app/oraInventory

chown -Rgrid:oinstall /u01/app/oraInventory/

chmod -R 775/u01/app/oraInventory/

mkdir -p/u01/app/grid

mkdir -p/u01/app/oracle

chown -Rgrid:oinstall /u01/app/grid/

chown -Roracle:oinstall /u01/app/oracle/

chmod -R 775/u01/app/grid/

chmod -R 775/u01/app/oracle/

4.5. 修改內核參數(所有節點)

[root@rac01~]# vi /etc/sysctl.conf

# for oracle11g

fs.aio-max-nr= 1048576

fs.file-max =6815744

kernel.shmall= 2147483648

kernel.shmmax= 68719476736

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= 1048586

使修改參數立即生效:

[root@rac01~]# /sbin/sysctl -p

[root@rac01~]# /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

[root@rac01~]# /etc/pam.d/login

session required pam_limits.so

[root@rac01 ~]#/etc/profile

if [ $USER ="oracle" ] || [ $USER = "grid" ]; then

if [ $SHELL = "/bin/ksh" ];then

ulimit -p 16384

ulimit -n 65536

else

ulimit -u 16384 -n 65536

fi

umask 022

fi

4.6 .禁用防火牆和SELINUX(所有節點)

serviceiptables stop

chkconfigiptables off

chkconfigiptables --list

setenforce 0

sed -i's/SELINUX=.*/SELINUX=disabled/' /etc/selinux/config

4.7 .檢查安裝包

rpm -q --qf'%{NAME}-%{VERSION}-%{RELEASE} (%{ARCH})\n' binutils \

compat-libstdc++-33\

elfutils-libelf\

elfutils-libelf-devel\

gcc \

gcc-c++ \

glibc \

glibc-common\

glibc-devel \

glibc-headers\

ksh \

libaio \

libaio-devel\

libgcc \

libstdc++ \

libstdc++-devel\

make \

sysstat \

unixODBC \

4.8 .配置用戶環境變量(grid和oracle用戶_所有節點)

grid用戶:

[grid@rac01 ~]# vi .bash_profile

export ORACLE_SID=+ASM1/+ASM2

export ORACLE_BASE=/u01/app/oracle

export ORACLE_HOME=/u01/app/grid/11.2

export PATH=$PATH:$ORACLE_HOME/bin

oracle用戶:

[oracle@rac01 ~]# vi .bash_profile

export ORACLE_SID=racdb1/racdb2

export ORACLE_UNQNAME=$ORACLE_SID

export ORACLE_BASE=/u01/app/oracle

export ORACLE_HOME=$ORACLE_BASE/11.2/db_1

export PATH=$PATH:$ORACLE_HOME/bin

4.9. ASM磁盤組規劃&分區

4.9.1 使用fdisk劃分磁盤,如下:

[root@rac01 ~]# fdisk /dev/sdb

劃分效果如下:

---------------------------------------------------------------------------

Device Boot Start End Blocks Id System

/dev/sdb1 1 132 1060258+ 83 Linux //CRS1 900M

/dev/sdb2 133 264 1060290 83 Linux //CRS2 900M

/dev/sdb3 265 396 1060290 83 Linux //CRS3 900M

/dev/sdb4 397 13054 101675385 5 Extended

/dev/sdb5 397 3008 20980858+ 83 Linux //DATA1 30GB

/dev/sdb6 3009 5620 20980858+ 83 Linux //DATA2 30GB

/dev/sdb7 5621 8232 20980858+ 83 Linux //DATA3 30GB

/dev/sdb8 8233 9538 10490413+ 83 Linux //REC1 30GB

/dev/sdb9 9539 13054 28242238+ 83 Linux //REC2 30GB

4.9.2 安裝asm

[root@rac02software]# rpm -ivh kmod-oracleasm-2.0.6.rh1-2.el6.x86_64.rpm

warning:kmod-oracleasm-2.0.6.rh1-2.el6.x86_64.rpm: Header V3 RSA/SHA256 Signature, keyID fd431d51: NOKEY

Preparing... ########################################### [100%]

1:kmod-oracleasm ########################################### [100%]

[root@rac02 software]# rpm -ivhoracleasm-support-2.1.8-1.el6.x86_64.rpm

warning: oracleasm-support-2.1.8-1.el6.x86_64.rpm:Header V3 RSA/SHA256 Signature, key ID ec551f03: NOKEY

Preparing... ########################################### [100%]

1:oracleasm-support ########################################### [100%]

[root@rac02 software]# rpm -ivhoracleasmlib-2.0.4-1.el6.x86_64.rpm

warning:oracleasmlib-2.0.4-1.el6.x86_64.rpm: Header V3 RSA/SHA256 Signature, key IDec551f03: NOKEY

Preparing... ########################################### [100%]

1:oracleasmlib ###########################################[100%]

4.9.3 配置asm

RAC01執行下列操作:

[root@rac1 ~]# /etc/init.d/oracleasmconfigure

[root@rac1 ~]# /etc/init.d/oracleasmconfigure

Default user to own the driver interface[]: grid

Default group to own the driver interface[]: asmadmin

Start Oracle ASM library driver on boot(y/n) [n]: y

Scan for Oracle ASM disks on boot (y/n)[y]: y

Writing Oracle ASM library driverconfiguration: done

Initializing the Oracle ASMLib driver: [ OK ]

Scanning the system for Oracle ASMLibdisks: [ OK ]

RAC02執行下列操作:

[root@rac02 software]# /etc/init.d/oracleasmconfigure

Default user to own the driver interface[]: grid

Default group to own the driver interface[]: asmadmin

Start Oracle ASM library driver on boot(y/n) [n]: y

Scan for Oracle ASM disks on boot (y/n)[y]: y

Writing Oracle ASM library driverconfiguration: done

Initializing the Oracle ASMLib driver: [ OK ]

Scanning the system for Oracle ASMLibdisks: [ OK ]

以下操作在rac其中一個節點上進行,我在rac1上操作

[root@rac1 ~]# /etc/init.d/oracleasmcreatedisk CRS1 /dev/sdb1

[root@rac1 ~]# /etc/init.d/oracleasmcreatedisk CRS2 /dev/sdb2

[root@rac1 ~]# /etc/init.d/oracleasmcreatedisk CRS3 /dev/sdb3

[root@rac1 ~]# /etc/init.d/oracleasmcreatedisk DATA1 /dev/sdb5

[root@rac1 ~]# /etc/init.d/oracleasmcreatedisk DATA2 /dev/sdb6

[root@rac1 ~]# /etc/init.d/oracleasmcreatedisk DATA3 /dev/sdb7

[root@rac1 ~]# /etc/init.d/oracleasmcreatedisk REC1 /dev/sdb8

[root@rac1 ~]# /etc/init.d/oracleasmcreatedisk REC2 /dev/sdb9

以下操作在另一個節點上進行,RAC2上操作

[root@rac02 software]# oracleasm scandisks

Reloading disk partitions: done

Cleaning any stale ASM disks...

Scanning system for ASM disks...

[root@Zracnode2 software]# oracleasmlistdisks

CRS1

CRS2

CRS3

DATA1

DATA2

DATA3

REC1

REC2

4.10.grid和oracle用戶配置SSH互信

為ssh和scp創建連接

ls -l /usr/local/bin/ssh

ls -l /usr/local/bin/scp

不存在則創建

[root@rac01 ~]# /bin/ln -s /usr/bin/ssh/usr/local/bin/ssh

[root@rac01 ~]# /bin/ln -s /usr/bin/scp/usr/local/bin/scp

為grid用戶配置SSH:

在每個節點上:

[root@rac01 ~]# su – grid

[grid@rac01 ~]# mkdir ~/.ssh

[grid@rac01 ~]#cd .ssh

[grid@rac01 ~]# ssh-keygen -t rsa

[grid@rac01 ~]# ssh-keygen -t dsa

在節點1上:

[grid@rac01 ~]# touch authorized_keys

[grid@rac01 ~]# ssh rac01 cat/home/grid/.ssh/id_rsa.pub >> authorized_keys

[grid@rac01 ~]# ssh rac02 cat/home/grid/.ssh/id_rsa.pub >> authorized_keys

[grid@rac01 ~]# ssh rac01 cat /home/grid/.ssh/id_dsa.pub>> authorized_keys

[grid@rac01 ~]# ssh rac02 cat/home/grid/.ssh/id_dsa.pub >> authorized_keys

[grid@rac01 ~]# scp authorized_keysrac02:/home/grid/.ssh/

分別在每個節點上:

[grid@rac01 ~]# ssh rac01 date

[grid@rac01 ~]# ssh rac02 date

[grid@rac01 ~]# ssh-agent $SHELL

[grid@rac01 ~]# ssh-add

為oracle用戶配置SSH:

在每個節點上:

[root@rac01 ~]# su – oracle

[oracle@rac01 ~]# mkdir ~/.ssh

[oracle@rac01 ~]#cd .ssh

[oracle@rac01 ~]# ssh-keygen -t rsa

[oracle@rac01 ~]# ssh-keygen -t dsa

在節點1上:

[oracle@rac01 ~]# touch authorized_keys

[oracle@rac01 ~]# ssh rac01 cat /home/oracle/.ssh/id_rsa.pub>> authorized_keys

[oracle@rac01 ~]# ssh rac02 cat /home/oracle/.ssh/id_rsa.pub>> authorized_keys

[oracle@rac01 ~]# ssh rac01 cat /home/oracle/.ssh/id_dsa.pub>> authorized_keys

[oracle@rac01 ~]# ssh rac02 cat /home/oracle/.ssh/id_dsa.pub>> authorized_keys

[oracle@rac01 ~]# scp authorized_keysrac02:/home/oracle/.ssh/

分別在每個節點上:

[oracle@rac01 ~]# ssh rac01 date

[oracle@rac01 ~]# ssh rac02 date

[oracle@rac01 ~]# ssh-agent $SHELL

[oracle@rac01 ~]# ssh-add

4.11.配置NTP

[root@rac01 ~]#vi /etc/ntp.conf

...

#server 0.centos.pool.ntp.org

#server 1.centos.pool.ntp.org

#server 2.centos.pool.ntp.org

server xxx.xxx.xxx.xxx

#server127.127.1.0 # local clock

#fudge 127.127.1.0 stratum 10

[root@rac01 ~]# vi /etc/sysconfig/ntpd

# Drop root to id 'ntp:ntp' by default.

OPTIONS="-x -u ntp:ntp -p /var/run/ntpd.pid"

# Set to 'yes' to sync hw clock aftersuccessful ntpdate

SYNC_HWCLOCK=yes

# Additional options for ntpdate

NTPDATE_OPTIONS=""

啟動

[root@rac01 ~]# chkconfig ntpd on

[root@rac01 ~]# service ntpd start

[root@rac01 ~]# ntpdate -d -u xxx.xxx.xxx.xxx

啟用name service cache daemon

[root@rac01 ~]# chkconfig --level 35 nscdon

[root@rac01 ~]# service nscd restart


-----------後面兩個階段,分別是GI安裝和oracle安裝,未完待續!~

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved