一、 主机硬软件需求
(两个节点)
1 、常用目录
/tmp : 1GB 及以上
Grid home : 6.6 GB of space for the Oracle Grid Infrastructure for a Cluster home (Grid home) This includes Oracle Clusterware and Oracle ASM files and log files, ACFS log files, and includes the Cluster Health Monitor repository, if available for your platform 。
Up to 10 GB of additional space in the Oracle base directory of the Grid Infrastructure owner for diagnostic collections generated by Trace File Analyser and Collector 。
Oracle base : For Linux x86_64 platforms, if you intend to install Oracle Database, then allocate 4.6 GB of disk space for the Oracle base 。
Table 2 – 2 Swap Space Required for Linux Available RAM Swap Space Required Between 2.5 GB and 16 GB Equal to the size of RAM More than 16 GB 16 GB
2、 内存和 swap
Table 2–2 Swap Space Required for Linux | |
Available RAM | Swap Space Required |
Between 2.5 GB and 16 GB | Equal to the size of RAM |
More than 16 GB | 16 GB |
二、 IP 地址分配
(两个节点)
/etc/hosts解析 | |||||
序号 | 主机 | 网卡 | ip地址 | 主机名 | 用途 |
1 | rac1 | eth0 | 10.0.0.100 | rac1 | public |
2 |
| 10.0.0.103 | rac1-vip | vip | |
3 | eth1 | 192.168.10.100 | rac1-priv | private | |
4 |
| 10.0.0.105 | rac1-scan | scan ip | |
5 | rac2 | eth0 | 10.0.0.101 | rac2 | public |
6 |
| 10.0.0.104 | rac2-vip | vip | |
7 | eth1 | 192.168.10.101 | rac2-priv | private |
(两个节点)
public ip: 类似与单实例的oracle数据库ip,主要用于管理\访问。
private ip :私有ip,oracle 内部用于节点间通讯的ip,不对外开放。(心跳)
virtual ip(vip): oracle在rac架构中专用,这个vip用于实现故障转移,当一个节点发生故障时,其vip会“浮动”到另外一个正常的节点,也即该正常节点对应着两个vip了。
SCAN: Single Client Access Name,单一客户访问名称,意思是客户端(如jdbc,pl/sql等)访问数据库时的公共域名,由于rac是多节点的,客户端要访问数据库,通过scan机制,只需要提供一个访问名称,oracle rac会自动为客户端分配一个节点,这对客户端来说是透明的。
三、 共享存储规划
1、 测试环境 iscsi
2、multipath 多路径聚合 (可以省,只要 udev 做好即可)
序号 | 多路径磁盘名称 | 大小 | ASM磁盘组 | 备注 |
1 | vol01 | 1 | VOTE_OCR | OCR、VOTE |
2 | vol02 | 1 | VOTE_OCR | |
3 | vol03 | 1 | VOTE_OCR | |
4 | vol04 | 8 | DATA | 数据 |
5 | vol05 | 8 | DATA | |
6 | vol06 | 8 | DADA | |
7 | vol07 | 6 | FLASHBACK | 闪回 |
8 | vol08 | 6 | FLASHBACK | |
9 | vol09 | 6 | FLASHBACE |
四、 linux 主机配置
1 、安装必要的包
(两个节点)
rpm -qa --qf "%{NAME}_%{VERSION}_%{ARCH}\n" \binutils glibc
binutils-2.20.51.0.2-5.11.el6 (x86_64)
compat-libcap1-1.10-1 (x86_64)
compat-libstdc++-33-3.2.3-69.el6 (x86_64)
compat-libstdc++-33-3.2.3-69.el6.i686
gcc-4.4.4-13.el6 (x86_64)
gcc-c++-4.4.4-13.el6 (x86_64)
glibc-2.12-1.7.el6 (i686)
glibc-2.12-1.7.el6 (x86_64)
glibc-devel-2.12-1.7.el6 (x86_64)
glibc-devel-2.12-1.7.el6.i686
pdksh-5.2.14-30.x86_64.rpm
libgcc-4.4.4-13.el6 (i686)
libgcc-4.4.4-13.el6 (x86_64)
libstdc++-4.4.4-13.el6 (x86_64)
libstdc++-4.4.4-13.el6.i686
libstdc++-devel-4.4.4-13.el6 (x86_64)
libstdc++-devel-4.4.4-13.el6.i686
libaio-0.3.107-10.el6 (x86_64)
libaio-0.3.107-10.el6.i686
libaio-devel-0.3.107-10.el6 (x86_64)
libaio-devel-0.3.107-10.el6.i686
make-3.81-19.el6 sysstat-9.0.4-11.el6 (x86_64)
sysstat-9.0.4-11.el6 (x86_64)
2 、内核参数
(两个节点)
# Vi /etc/sysctl.conf (此处为最小值)
fs.aio-max-nr = 1048576
fs.file-max = 6815744
kernel.shmall = 2097152
kernel.shmmax = 4294967295
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 -p
说明:
shmmax : Minimum: 536870912
32-bit Linux Systems Maximum: A value that is 1 byte less than 4 GB, or 4294967295 Recommended: More than half the physical memory
64-bit Linux Systems Maximum: A value that is 1 byte less than the physical memory Recommended: More than half the physical memory See My Oracle Support Note 567506.1 for additional information about configuring shmmax ,一般为物理内存一半即可
shmall :
kernel.shmall 参数是控制共享内存页数 。Linux 共享内存页大小为4KB, 共享内存段的大小都是共享内存页大小的整数倍。一个共享内存段的最大大小是16G,那么需要共享内存页数是 16GB/4KB=16777216KB/4KB=4194304 (页),也就是64Bit 系统下16GB 物理内存,设置 kernel.shmall = 4194304 才符合要求(几乎是原来设置2097152
的两倍 )。这时可以将shmmax 参数调整到 16G 了,同时可以修改SGA_MAX_SIZE 和SGA_TARGET 为 12G(您想设置的SGA 最大大小,当然也可以是2G~14G 等,还要协调PGA参数及OS 等其他内存使用,不能设置太满,比如16G)
3 、修改 oracle 、 grid 用户限制
(两个节点)
#vi /etc/security/limits.conf (oralce可以运行文件的最大数量)
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
4、更改安装所有者的ulimit设置
(两个节点)
#vi /etc/profile 加在 profile 文件之后
if [ $USER = "oracle" ] ;then
if [ $SHELL = "/bin/ksh" ] ;then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65535
fi
fi
5、 修改 /etc/pam.d/login
(两个节点)
#vi /etc/pam.d/login
session required pam_limits.so
6、 关闭防火墙, selinux ,ntpd服务并防止开机启动
(两个节点)
/etc/init.d/ntpd stop
mv /etc/ntp.conf /etc/ntp.conf_bak 一定要将配置文件删除或重命名
7、 配置 ssh (root,oracle,grid三个用户的ssh)
两个节点执行:
mkdir ~/.ssh
chmod 700 ~/.ssh
/usr/bin/ssh-keygen -t rsa
只在节点 1上执行: 将公钥考到对方机器的用户目录下
touch ~/.ssh/authorized_keys
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
ssh rac2 cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
scp ~/.ssh/authorized_keys rac2:~/.ssh/authorized_keys
五、用户组及用户
(两个节点)
groupadd -g 501 oinstall
groupadd -g 502 dba
groupadd -g 503 oper
groupadd -g 504 asmadmin
groupadd -g 505 asmdba
groupadd -g 506 asmoper
useradd -u 500 -g oinstall -G dba,asmdba,asmadmin,oper oracle
useradd -u 507 -g oinstall -G asmadmin,asmdba,asmoper,oper,dba grid
六、 安装目录
(两个节点)
mkdir -p /u01/app/oracle
mkdir -p /u01/app/grid
mkdir -p /u01/app/11.2.0/grid
chown -R oracle:oinstall /u01
chown -R grid:oinstall /u01/app/grid
chown -R grid:oinstall /u01/app/11.2.0/grid
chmod -R 775 /u01
七、配置环境变量
grid 用户:
export ORACLE_SID= +ASM1
export ORACLE_BASE=/u01/app/grid
export ORACLE_HOME=/u01/app/11.2.0/grid
export PATH=$ORACLE_HOME/bin:$PATH:/usr/local/bin/:.
export TEMP=/tmp
export TMP=/tmp
export TMPDIR=/tmp
umask 022
oracle:
export ORACLE_SID= rac1 ;
export ORACLE_BASE=/u01/app/oracle;
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1;
export GRID_HOME=/u01/app/11.2.0/grid;
export NLS_DATE_FORMAT="YYYY:MM:DD HH24:MI:SS";
export NLS_LANG=american_america.ZHS16GBK;
export PATH=.:${PATH}:$HOME/bin:$ORACLE_HOME/bin:$GRID_HOME/bin
export TEMP=/tmp
export TMPDIR=/tmp
umask 022
( 节点 2 为 asm2,rac2)
八、 udev 绑定共享存储
# vi /etc/udev/rules.d/99-oracle.rules
KERNEL=="sd*", BUS=="scsi",PROGRAM=="/sbin/scsi_id --whitelisted --device=/dev/$name",RESULT=="1IET 00010001",NAME="asm-vol01",OWNER="grid",GROUP="asmadmin",MODE="0660"
KERNEL=="sd*", BUS=="scsi",PROGRAM=="/sbin/scsi_id --whitelisted --device=/dev/$name",RESULT=="1IET 00010002",NAME="asm-vol02",OWNER="grid",GROUP="asmadmin",MODE="0660"
# start_udev start
[root@rac2 ~]# ls -ld /dev/asm*
brw-rw---- 1 grid asmadmin 8, 16 11 月 28 03:47 /dev/asm-vol01
brw-rw---- 1 grid asmadmin 8, 32 11 月 28 03:47 /dev/asm-vol02
brw-rw---- 1 grid asmadmin 8, 48 11 月 28 03:47 /dev/asm-vol03
brw-rw---- 1 grid asmadmin 8, 64 11 月 28 03:47 /dev/asm-vol04
brw-rw---- 1 grid asmadmin 8, 80 11 月 28 03:47 /dev/asm-vol05
brw-rw---- 1 grid asmadmin 8, 96 11 月 28 03:47 /dev/asm-vol06
brw-rw---- 1 grid asmadmin 8, 112 11 月 28 03:47 /dev/asm-vol07
brw-rw---- 1 grid asmadmin 8, 128 11 月 28 03:47 /dev/asm-vol08
brw-rw---- 1 grid asmadmin 8, 144 11 月 28 03:47 /dev/asm-vol09
九、 安装 grid
图形界面问题是乱码。可修改 LANG 设置再安装。
export LC=C
export LC_ALL=C
export LANG=C
./runInstaller
安装检查:
Crsctl status crs
Crsctl check crs
Crsctl start cluster
Crs_stat -t
启停:
./crsctl stop cluster
./crsctl stop crs
十、 grid 用户下 asmca 创建磁盘组
十一、 Oracle 用户下安装数据库软件
十二、 Oracle 用户下 dbca 建库
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/31411496/viewspace-2129485/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/31411496/viewspace-2129485/