RedHat上安装11R2RAC集群

注意,本文档针对初级DBA

==============1、准备环境

>上传安装包,注意安装包位数,权限

>挂载ISO镜像,安装软件包

gcc*

gcc-c++*

glibc*

glibc-common*

glibc-devel*

glibc-headers*

libstdc++*

libaio*

sysstat

libcap

make-3.81-3.el5

binutils-2.17.50.0.6-12.el5

compat-libstdc++*

elfutils-libelf*

libgcc*

unixODBC*

unixODBC-devel*

ksh*

pdksh

compat-libstdc++-33

compat-libcap1

 

图形化包  xorg-x11-apps

根据环境预检查时提示缺少的软件包进行安装

>确定好IP地址,pub+priv+vip+scan,双节点7个ip

>ntp时间配置一致或者手动修改为一致,使用CTSS

>关闭sendmail,(主要是会影响系统性能)

service sendmail stop

然后执行

chkconfig sendmail off

chkconfig --list sendmail

得到结果全为off就OK

>修改/dev/shm共享内存大小,默认是内存一半,一般修改为内存的80%

1)查看大小 
df -h /dev/shm

2)修改大小 
vi /etc/fstab 

tmpfs /dev/shm tmpfs defaults,size=4096M 0 0

[root@ASM_ora ~]# umount /dev/shm

umount: /dev/shm: device is busy

umount: /dev/shm: device is busy

 

fuser -km /dev/shm

3)重新挂载 
umount /dev/shm 
mount /dev/shm

4)查看修改后的大小 

df -h /dev/shm

5)开机启动

>配置好共享磁盘及裸设备

虚拟化本地硬盘要分区

linux6.4

[root@node1 ~]# vi /etc/udev/rules.d/99-oracle-asmdevices.rules

linux5.4

[root@node1 ~]# vi /etc/udev/rules.d/60-raw.rules

增加如下内容:
ACTION=="add", KERNEL=="/dev/sdb1",RUN+="/bin/raw /dev/raw/raw1 %N"
ACTION=="add", ENV{MAJOR}=="8",ENV{MINOR}=="17",RUN+="/bin/raw /dev/raw/raw1 %M %m"
ACTION=="add", KERNEL=="/dev/sdc1",RUN+="/bin/raw /dev/raw/raw2 %N"
ACTION=="add", ENV{MAJOR}=="8",ENV{MINOR}=="33",RUN+="/bin/raw /dev/raw/raw2 %M %m"
ACTION=="add", KERNEL=="/dev/sdd1",RUN+="/bin/raw /dev/raw/raw3 %N"
ACTION=="add", ENV{MAJOR}=="8",ENV{MINOR}=="49",RUN+="/bin/raw /dev/raw/raw3 %M %m"
ACTION=="add", KERNEL=="/dev/sde1",RUN+="/bin/raw /dev/raw/raw4 %N"

ACTION=="add", ENV{MAJOR}=="8",ENV{MINOR}=="65",RUN+="/bin/raw /dev/raw/raw4 %M %m"

KERNEL=="raw[1-4]", OWNER="oracle", GROUP="oinstall", MODE="770"

 

[root@rac1 ~]# start_udev

 

聚合存储修改查看/dev/dm-*所属用户、属组、权限和/dev/mapper/*设备

使用udev规则修改设备读写权限

vi /etc/udev/rules.d/99-oracle-asmdevices.rules

KERNEL=="dm-0", OWNER="grid", GROUP="asmadmin", MODE="0660"

KERNEL=="dm-1", OWNER="oracle", GROUP="oinstall", MODE="0660"

KERNEL=="dm-2", OWNER="oracle", GROUP="oinstall", MODE="0660"

KERNEL=="dm-3", OWNER="grid", GROUP="asmadmin", MODE="0660"

KERNEL=="dm-4", OWNER="oracle", GROUP="oinstall", MODE="0660"

KERNEL=="dm-5", OWNER="oracle", GROUP="oinstall", MODE="0660"

注意:

虽然ASM中使用的/dev/mapper/下的设备,但是这些设备最终还是连接到/dev/dm-*这些设备。所以如果需要使用/dev/mapper/下的设备,必须udev修改/dev/dm-*这些设备读写权限。虽然/dev/dm-*这些设备读写权限能够通过chmod更改,但是一定重启存储或者重启服务器之后之前更改的权限又变回来了。所以必须使用udev修改这些设备权限。

 

/dev/目录下有多少个dm-*就写多少个,OWNER和asmadmin可以不用这么严格,但是MODE权限必须设置成0660。比如dm-1现在对应的是data11这个设备,但是如果其中一台存储宕机,dm-1对应的一定不是data11了。

===============2、前期系统配置

>设置内核参数和其他参数:

vi /etc/sysctl.conf

kernel.core_uses_pid = 1

kernel.shmall = 2097152

kernel.shmmax = 68718476736

kernel.shmmni = 4096

kernel.sem = 250 32000 100 128

net.core.rmem_default = 1048576

net.core.wmem_default = 262144

fs.file-max = 6815744

net.ipv4.ip_local_port_range = 9000 65500

net.core.rmem_max = 4194304

net.core.wmem_max = 1048576

fs.aio-max-nr = 1048576

 

sysctl -p

 

>修改用户资源限制

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

>修改用户登陆限制

vi /etc/pam.d/login

session    required     /lib64/security/pam_limits.so

session    required     pam_limits.so

vi /etc/profile

if [ $USER = "oracle" ]; then

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

              ulimit -p 16384

              ulimit -n 65536

        else

              ulimit -u 16384 -n 65536

        fi

fi

 

if [ $USER = "grid" ]; then

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

              ulimit -p 16384

              ulimit -n 65536

        else

              ulimit -u 16384 -n 65536

        fi

fi

 

执行source /etc/profile命令使配置生效

>配置/etc/hosts文件

vi /etc/hosts

#public ip

192.168.0.11 rac1

192.168.0.12 rac2

#priv ip

10.0.0.11 rac1-priv

10.0.0.12 rac2-priv

#virtual ip

192.168.0.111 rac1-vip

192.168.0.112 rac2-vip

#scan ip

192.168.0.110 racscan

>创建用户及目录

groupadd -g 501 oinstall

groupadd -g 502 dba

groupadd -g 503 oper

groupadd -g 504 asmadmin

groupadd -g 505 asmoper

groupadd -g 506 asmdba

useradd -g oinstall -G dba,asmdba,oper,root oracle -m

useradd -g oinstall -G asmadmin,asmdba,asmoper,oper,dba grid -m

 

mkdir -p /u01/app/11.2.0/

chown -R grid:oinstall /u01/app/11.2.0/

mkdir -p /u01/app/oraInventory/

chown -R grid:oinstall /u01/app/oraInventory/

mkdir -p /u01/app/grid/

mkdir -p /u01/app/oracle/

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

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

chmod -R 775 /u01/app/

 

>设置用户密码

passwd oracle

passwd grid

>设置用户环境变量

su - oracle

vi .bash_profile

export TMP=/tmp

export TMPDIR=$TMP

export ORACLE_BASE=/u01/app/oracle

export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1

export ORACLE_SID=orcl1

export ORACLE_TERM=xterm

export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK

export NLS_DATE_FORMAT="yyyy-mm-dd hh24:mi:ss"

export PATH=$ORACLE_HOME/bin:$BASE_PATH:$PATH:$HOME/bin

export LD_LIBRARY_PATH=$ORACLE_HOME/bin:/bin:/usr/bin:/usr/local/bin:/usr/X11R6/bin/

export CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib

umask 022

 

#export ORA_CRS_HOME=$ORACLE_BASE/product/10.2.0/crs_1(10g)

 

文件生效  source .bash_profile

 

 

su - grid

vi .bash_profile

export TMP=/tmp

export TMPDIR=$TMP

export ORACLE_BASE=/u01/app/grid

export ORACLE_HOME=/u01/app/11.2.0/grid

export ORACLE_SID=+ASM1

export ORACLE_TERM=xterm

export PATH=$ORACLE_HOME/bin:$BASE_PATH:$PATH:$HOME/bin

export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib

export CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib

umask 022

 

文件生效  source .bash_profile

>配置用户ssh信任关系

grid用户使用grid目录里的文件执行

./sshUserSetup.sh -user grid -hosts "rac1 rac2" -advanced -noPromptPassphrase

oracle用户使用database目录里的文件执行

./sshUserSetup.sh -user oracle -hosts "rac1 rac2" -advanced -noPromptPassphrase

 

>前期环境检查,如有问题,继续修复

./runcluvfy.sh stage -pre crsinst -n rac1,rac2 -verbose

 

./runInstaller -ignoreSysPrereqs(10g)

 

===============3、安装grid集群软件

./runInstaller

 

===============4、添加磁盘组,DATA,ARCH

asmca

注意磁盘组模式

 

===============5、安装oracle软件

./runInstaller

 

===============6、创建oracle数据库库

dbca

注意

processes修改为最佳大小

内存为80%

字符集为中文

安装最后修改redo日志大小

安装完毕每个节点再添加两组redo日志

 

>修改local_listener,以便让scan ip可用(每个节点都做一次)

 

orcl1

SQL> show parameter local_listener;


NAME                     TYPE    VALUE------------------------------------ ----------- ------------------------------
local_listener               string  (DESCRIPTION=(ADDRESS_LIST=(AD
                         DRESS=(PROTOCOL=TCP)(HOST=rac-
                         orcl01)(PORT=1521))))

SQL> alter system set local_listener='(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.5.103)(PORT=1521))))' scope=both sid='orcl1';

 

System altered.

 

 

=============== 7、重新安装需要删除的目录

rm -rf /u01/app/11.2.0.2/grid/*

rm -rf /u01/app/grid/*

rm -rf /u01/11.2.0/grid/*

rm -rf /u01/app/oraInventory/*

rm -rf /var/opt/ora*

rm -rf /etc/init.d/init.ohasd /etc/init.d/ohasd

rm -rf /u01/app/oracle/product除外的其它

rm -rf /tmp/*

rm -rf /etc/ora*

>执行脚本2时报错,重新执行脚本前

$ORACLE_HOME/crs/install/roothas.pl -delete -force -verbose

>复制虚拟机后记得修改主机名

>发现不到磁盘,执行

chmod 6755 $ORACLE_HOME/bin/oracle

>清空裸设备文件内容

当时试过没有使用带参数的可以生效

dd if=/dev/zero of=/dev/raw/raw3

这样也行

dd if=/dev/zero of=/dev/sdb

 

 

===============8、修改redo日志

alter database datafile '+DATA/aams/datafile/system.260.839517123' resize 20G;
alter database datafile '+DATA/aams/datafile/sysaux.261.839517125' resize 20G;
alter database datafile '+DATA/aams/datafile/undotbs1.262.839517129' resize 20G;
alter database tempfile '+DATA/aams/tempfile/temp.263.839517129' resize 20G;

 

 

select group#,thread#,bytes/1024/1024 "MB",members,status from v$log;

select member from v$logfile;

 

alter database add logfile thread 1 group 5('+DATA') size 512M;

alter database add logfile thread 1 group 6('+DATA') size 512M;

alter database add logfile thread 2 group 7('+DATA') size 512M;

alter database add logfile thread 2 group 8('+DATA') size 512M;

 

alter database drop logfile group 1;
alter database drop logfile group 2;
alter database drop logfile group 3;

alter database drop logfile group 4;

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值