1、配置/etc/hosts 网络
172.16.10.221 rac1 rac1-publ
192.168.122.37 rac1-priv
172.16.10.226 rac1-vip
172.16.10.222 rac2 rac2-publ
192.168.122.145 rac2-priv
172.16.10.227 rac2-vip
172.16.10.225 rac-scan
2、关闭firewall和disabled Selinux
service iptables stop
chkconfig iptables off
vi /etc/selinux/config 修改成==>SELINUX=disabled
setenforce 0
3、修改/etc/security/limits.conf 文件,增加内容如下:
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
4、修改/etc/pam.d/login 文件
vi /etc/pam.d/login
session required pam_limits.so
5、修改 sysctl.conf 配置文件
vi /etc/sysctl.conf
fs.aio-max-nr = 1048576
fs.file-max = 6815744
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
让配置生效:
sysctl -p
6、关闭ntp服务
service ntpd status
chkconfig ntpd off
mv /etc/ntp.conf /etc/ntp.conf.original
7、创建用户和组
groupadd -g 5000 asmadmin
groupadd -g 5001 asmdba
groupadd -g 5002 asmoper
groupadd -g 6000 oinstall
groupadd -g 6001 dba
groupadd -g 6002 oper
useradd -g oinstall -G asmadmin,asmdba,asmoper,dba grid
useradd -g oinstall -G dba,asmdba,asmadmin oracle
passwd oracle
passwd grid
8、创建安装目录
mkdir /u01
mkdir /g01
chown -R oracle:oinstall /u01
chown -R grid:oinstall /g01
9、vi /etc/profile
--添加如下
if [ USER = "oracle" ] || [ USER = "grid" ]; then
if [ $SHELL = "/bin/ksh" ]; then
ulimit -p 16384
ulimit -p 65536
else
ulimit -u 16384 -n 65536
fi
umask 022
fi
10、配置yum 并安装相关包
mkdir /media/disk --创建挂载目录
mount /dev/cdrom /media/disk/ ---挂载
touch /etc/yum.repos.d/oinstall.repo ---创建yum文件
vi oinstall.repo
[oracle-install]
name=oracle-install
baseurl=file: ///media/disk/Server
gpgcheck=0
enabled=1
yum install oracle-rdbms-server-11gR2-preinstall-1.0-6.el6 --安装包之后,oracle用户参数自动设定
或者 # yum install binutils -y
yum install compat-libcap1 -y
yum install compat-libstdc++-33 -y
yum install gcc -y
yum install gcc-c++ -y
yum install glibc -y
yum install glibc-devel -y
yum install ksh -y
yum install libgcc -y
yum install libstdc++ -y
yum install libstdc++-devel -y
yum install libaio -y
yum install libaio-devel -y
yum install libXext -y
yum install libXtst -y
yum install libX11 -y
yum install libXau -y
yum install libxcb -y
yum install libXi -y
yum install make -y
yum install sysstat -y
yum install unixODBC -y
yum install unixODBC-devel -y ---后续参数需要自行设置
--检查包是否被安装上
rpm -q binutils compat-libcap1 compat-libstdc++-33 gcc gcc-c++ glibc glibc-devel ksh libgcc libstdc++ libstdc++-devel libaio libaio-devel libXext libX11 libXau libxcb libXi make sysstat unixODBC unixODBC-devel
10、(看是否采用哪个安装包)cat /etc/security/limits.conf查看用户限制文件的参数,使用oracle-rdbms-server-11gR2-preinstall-1.0-6.el6 --安装包之后,oracle用户参数自动设定,并修改文件限制参数(grid)
grid-rdbms-server-11gR2-preinstall setting for nofile soft limit is 1024
grid soft nofile 1024
grid-rdbms-server-11gR2-preinstall setting for nofile hard limit is 65536
grid hard nofile 65536
grid-rdbms-server-11gR2-preinstall setting for nproc soft limit is 2047
grid soft nproc 2047
grid-rdbms-server-11gR2-preinstall setting for nproc hard limit is 16384
grid hard nproc 16384
grid-rdbms-server-11gR2-preinstall setting for stack soft limit is 10240KB
grid soft stack 10240
grid-rdbms-server-11gR2-preinstall setting for stack hard limit is 32768KB
grid hard stack 32768
11、配置grid用户环境变量:
rac1:
vi ~/.bash_profile
--添加如下
ORACLE_SID=+ASM1
NLS_LANG=AMERICAN_AMERICA.ZHS16GBK; export NLS_LANG
ORACLE_BASE=/g01/grid
ORACLE_HOME=/g01/app/grid/11.2.0
TNS_ADMIN=$ORACLE_HOME/network/admin
ORA_NLS33=$ORACLE_HOME/ocommon/nls/admin/data
PATH=PATH:ORACLE_HOME/bin:ORACLE_HOME/oracm/bin:ORACLE_HOME/OPatch:$ORACLE_HOME/jdbc
LD_LIBRARY_PATH=ORACLE_HOME/lib:ORACLE_HOME/ctx/lib:$ORACLE_HOME/oracm/lib:/usr/lib
CLASSPATH=ORACLE_HOME/JRE:ORACLE_HOME/jlib:ORACLE_HOME/rdbms/jlib:ORACLE_HOME/network/jlib:$ORACLE_HOME/jdbc/lib
SQLPATH=ORACLE_HOME/sqlplus/admin:/home/oracle/admin/sql:ORACLE_HOME/rdbms/admin
export ORACLE_BASE ORACLE_HOME ORA_NLS33 ORACLE_SID PATH LD_LIBRARY_PATH CLASSPATH TNS_ADMIN SQLPATH
export ORACLE_BASE ORACLE_HOME ORA_NLS33 ORACLE_SID PATH LD_LIBRARY_PATH CLASSPATH SQLPATH
NLS_DATE_FORMAT="yyyy-mm-dd hh24:mi:ss";export NLS_DATE_FORMAT
echo " "
echo " "
echo -e "/e[31;1m********************/e[0m"
echo -e "/e[31;1mYou login as grid,Please ask somebody to double check!***/e[0m"
echo -e "/e[31;1m********************/e[0m"
echo " "
echo " "
export PS1='/e[31;1m{LOGNAME}@{HOSTNAME}:${PWD}>/e[0m'
alias sql='sqlplus "/"'
alias rsql='rlwrap sqlplus'
alias sqln="sqlplus /nolog"
alias dba='sqlplus "/as sysasm"'
alias ohome="cd $ORACLE_HOME"
alias rm='rm -i --'
alias cp='cp -i'
alias mv='mv -i --'
11G
alias clog='cd $ORACLE_HOME/log/hostname'
alias bdump='cd ORACLE_BASE/diag/asm/+asm/ORACLE_SID/trace'
alias udump="cd $ORACLE_BASE/admin/diag/asm/+asm/+ASM/trace/"
alias cdump="cd $ORACLE_BASE/admin/diag/asm/+asm/+ASM/trace/"
alias otail="tail -f ORACLE_BASE/admin/diag/asm/+asm/+ASM/trace/alert_ORACLE_SID.log"
alias vlog='tail -200 ORACLE_BASE/admin/diag/asm/+asm/+ASM/trace/alert_ORACLE_SID.log'
alias myasm='cd $ORACLE_BASE/admin/diag/asm/+asm/+ASM/trace'
rac2:
vi ~/.bash_profile
--添加如下
ORACLE_SID=+ASM2
NLS_LANG=AMERICAN_AMERICA.ZHS16GBK; export NLS_LANG
ORACLE_BASE=/g01/grid
ORACLE_HOME=/g01/app/grid/11.2.0
TNS_ADMIN=$ORACLE_HOME/network/admin
ORA_NLS33=$ORACLE_HOME/ocommon/nls/admin/data
PATH=PATH:ORACLE_HOME/bin:ORACLE_HOME/oracm/bin:ORACLE_HOME/OPatch:$ORACLE_HOME/jdbc
LD_LIBRARY_PATH=ORACLE_HOME/lib:ORACLE_HOME/ctx/lib:$ORACLE_HOME/oracm/lib:/usr/lib
CLASSPATH=ORACLE_HOME/JRE:ORACLE_HOME/jlib:ORACLE_HOME/rdbms/jlib:ORACLE_HOME/network/jlib:$ORACLE_HOME/jdbc/lib
SQLPATH=ORACLE_HOME/sqlplus/admin:/home/oracle/admin/sql:ORACLE_HOME/rdbms/admin
export ORACLE_BASE ORACLE_HOME ORA_NLS33 ORACLE_SID PATH LD_LIBRARY_PATH CLASSPATH TNS_ADMIN SQLPATH
export ORACLE_BASE ORACLE_HOME ORA_NLS33 ORACLE_SID PATH LD_LIBRARY_PATH CLASSPATH SQLPATH
NLS_DATE_FORMAT="yyyy-mm-dd hh24:mi:ss";export NLS_DATE_FORMAT
echo " "
echo " "
echo -e "/e[31;1m********************/e[0m"
echo -e "/e[31;1mYou login as grid,Please ask somebody to double check!***/e[0m"
echo -e "/e[31;1m********************/e[0m"
echo " "
echo " "
export PS1='/e[31;1m{LOGNAME}@{HOSTNAME}:${PWD}>/e[0m'
alias sql='sqlplus "/"'
alias rsql='rlwrap sqlplus'
alias sqln="sqlplus /nolog"
alias dba='sqlplus "/as sysasm"'
alias ohome="cd $ORACLE_HOME"
alias rm='rm -i --'
alias cp='cp -i'
alias mv='mv -i --'
11G
alias clog='cd $ORACLE_HOME/log/hostname'
alias bdump='cd ORACLE_BASE/diag/asm/+asm/ORACLE_SID/trace'
alias udump="cd $ORACLE_BASE/admin/diag/asm/+asm/+ASM/trace/"
alias cdump="cd $ORACLE_BASE/admin/diag/asm/+asm/+ASM/trace/"
alias otail="tail -f ORACLE_BASE/admin/diag/asm/+asm/+ASM/trace/alert_ORACLE_SID.log"
alias vlog='tail -200 ORACLE_BASE/admin/diag/asm/+asm/+ASM/trace/alert_ORACLE_SID.log'
alias myasm='cd $ORACLE_BASE/admin/diag/asm/+asm/+ASM/trace'
stty erase ^H
12、配置oracle用户环境变量:
rac1:
--添加如下
ORACLE_SID=orcl1
NLS_LANG=AMERICAN_AMERICA.ZHS16GBK; export NLS_LANG
ORACLE_HOME=/u01/oracle/11.2.0
ORACLE_BASE=/u01/oracle
TNS_ADMIN=$ORACLE_HOME/network/admin
ORA_NLS33=$ORACLE_HOME/ocommon/nls/admin/data
PATH=PATH:ORACLE_HOME/bin:ORACLE_HOME/oracm/bin:ORACLE_HOME/OPatch:$ORACLE_HOME/jdbc
LD_LIBRARY_PATH=ORACLE_HOME/lib:ORACLE_HOME/ctx/lib:$ORACLE_HOME/oracm/lib:/usr/lib
CLASSPATH=ORACLE_HOME/JRE:ORACLE_HOME/jlib:ORACLE_HOME/rdbms/jlib:ORACLE_HOME/network/jlib:$ORACLE_HOME/jdbc/lib
SQLPATH=ORACLE_HOME/sqlplus/admin:/home/oracle/admin/sql:ORACLE_HOME/rdbms/admin
export ORACLE_BASE ORACLE_HOME ORA_NLS33 ORACLE_SID PATH LD_LIBRARY_PATH CLASSPATH TNS_ADMIN SQLPATH
export ORACLE_BASE ORACLE_HOME ORA_NLS33 ORACLE_SID PATH LD_LIBRARY_PATH CLASSPATH SQLPATH
NLS_DATE_FORMAT="yyyy-mm-dd hh24:mi:ss";export NLS_DATE_FORMAT
echo " "
echo " "
echo -e "/e[31;1m********************/e[0m"
echo -e "/e[31;1mYou login as oracle,Please ask somebody to double check!***/e[0m"
echo -e "/e[31;1m********************/e[0m"
echo " "
echo " "
export PS1='/e[31;1m{LOGNAME}@{HOSTNAME}:${PWD}>/e[0m'
alias sql='sqlplus "/"'
alias rsql='rlwrap sqlplus'
alias sqln="sqlplus /nolog"
alias dba='sqlplus "/as sysdba"'
alias ohome="cd $ORACLE_HOME"
alias rm='rm -i --'
alias cp='cp -i'
alias mv='mv -i --'
-------------------------------------------------------------------------------------
UMASK
-------------------------------------------------------------------------------------
Set the default file mode creation mask
(umask) to 022 to ensure that the user performing
the Oracle software installation creates files
with 644 permissions
------------------------------------------------------------------------------------
umask 022
stty erase ^H
rac2:
--添加如下
ORACLE_SID=orcl2
NLS_LANG=AMERICAN_AMERICA.ZHS16GBK; export NLS_LANG
ORACLE_HOME=/u01/oracle/11.2.0
ORACLE_BASE=/u01/oracle
TNS_ADMIN=$ORACLE_HOME/network/admin
ORA_NLS33=$ORACLE_HOME/ocommon/nls/admin/data
PATH=PATH:ORACLE_HOME/bin:ORACLE_HOME/oracm/bin:ORACLE_HOME/OPatch:$ORACLE_HOME/jdbc
LD_LIBRARY_PATH=ORACLE_HOME/lib:ORACLE_HOME/ctx/lib:$ORACLE_HOME/oracm/lib:/usr/lib
CLASSPATH=ORACLE_HOME/JRE:ORACLE_HOME/jlib:ORACLE_HOME/rdbms/jlib:ORACLE_HOME/network/jlib:$ORACLE_HOME/jdbc/lib
SQLPATH=ORACLE_HOME/sqlplus/admin:/home/oracle/admin/sql:ORACLE_HOME/rdbms/admin
export ORACLE_BASE ORACLE_HOME ORA_NLS33 ORACLE_SID PATH LD_LIBRARY_PATH CLASSPATH TNS_ADMIN SQLPATH
export ORACLE_BASE ORACLE_HOME ORA_NLS33 ORACLE_SID PATH LD_LIBRARY_PATH CLASSPATH SQLPATH
NLS_DATE_FORMAT="yyyy-mm-dd hh24:mi:ss";export NLS_DATE_FORMAT
echo " "
echo " "
echo -e "/e[31;1m********************/e[0m"
echo -e "/e[31;1mYou login as oracle,Please ask somebody to double check!***/e[0m"
echo -e "/e[31;1m********************/e[0m"
echo " "
echo " "
export PS1='/e[31;1m{LOGNAME}@{HOSTNAME}:${PWD}>/e[0m'
alias sql='sqlplus "/"'
alias rsql='rlwrap sqlplus'
alias sqln="sqlplus /nolog"
alias dba='sqlplus "/as sysdba"'
alias ohome="cd $ORACLE_HOME"
alias rm='rm -i --'
alias cp='cp -i'
alias mv='mv -i --'
-------------------------------------------------------------------------------------
UMASK
-------------------------------------------------------------------------------------
Set the default file mode creation mask
(umask) to 022 to ensure that the user performing
the Oracle software installation creates files
with 644 permissions
------------------------------------------------------------------------------------
umask 022
stty erase ^H
12、配置共享存储(root用户)
---在rac1上执行如下
以下脚本生成asm-disk*设备,并追加到99-oracle-asmdevices.rules的规则文件内:
for i in b c d e f g h i j;
do
echo "KERNEL==/"sd*/", BUS==/"scsi/", PROGRAM==/"/sbin/scsi_id --whitelisted --replace-whitespace --device=/dev/$name/", RESULT==/"/sbin/scsi_id --whitelisted --replace-whitespace --device=/dev/sd$i/", NAME=/"asm-disk$i/", OWNER=/"grid/", GROUP=/"asmadmin/", MODE=/"0660/"" >> /etc/udev/rules.d/99-oracle-asmdevices.rules
done
--绑定udev设备并查看asm-disk*是否生成
start_udev
---rac1、rac2两个节点执行
vi /lib/udev/rules.d/90-pulseaudio.rules
#找到SUBSYSTEMS=="usb", GOTO="pulseaudio_check_usb"这行,前面加个#注释掉
ls /dev/asm-disk* ---查看asm-disk*是否生成
9、把这个规则SCP到rac2节点,然后再rac2也start_udev即可。
cd /etc/udev/rules.d/
scp 99-oracle-asmdevices.rules root@172.21.16.222:/etc/udev/rules.d/99-oracle-asmdevices.rules
13、rac1、rac2互信(grid用户两节点互信以及oracle用户两节点互信分别登陆)
配置两个节点间grid和oracle帐号的SSH互信认证 (可图行化安装自动配置)
以便安装过程中将grid和oracle目录复制到其他节点中。
1).在主节点RAC1上以grid,oracle用户身份生成用户的公匙和私匙
$ mkdir ~/.ssh
ssh-keygen -t rsa
ssh-keygen -t dsa
2).在副节点RAC2上执行相同的操作,确保通信无阻
$mkdir ~/.ssh
ssh-keygen -t rsa
ssh-keygen -t dsa
3).在一节点RAC1上oracle(grid)用户执行以下操作
$cat ~/.ssh/id_rsa.pub >> ./.ssh/authorized_keys
cat ~/.ssh/id_dsa.pub >> ./.ssh/authorized_keys
ssh rac2 cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
ssh rac2 cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys
---在二节点RAC2上oracle(grid)用户执行以下操作
$cat ~/.ssh/id_rsa.pub >> ./.ssh/authorized_keys
cat ~/.ssh/id_dsa.pub >> ./.ssh/authorized_keys
ssh rac1 cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
ssh rac1 cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys
4)--rac1、rac2节点上验证用户等效性
$ssh rac1 date
$ssh rac2 date
$ssh rac1-priv date
$ssh rac2-priv date
11、上传安装软件grid,并切换用户grid解压
$ cd 软件解压路径中的sshUserSetup
$./sshUserSetup.sh -user grid -hosts "rac1 rac2" -noPromptPassphrase -confirm -advanced
期间要输入grid用户口令
$./runcluvfy.sh stage -pre crsinst -n rac1,rac2 -verbose ---校验环境
---上传响应文件grid_install.rsp 详情见grid_install文档
--安装
$./runInstaller -silent -responseFile /home/grid/response/grid_install.rsp -showProgress -ignorePrereq
执行脚本:现在rac1执行再到rac2上执行:
12、上传安装软件oracle,并切换用户oracle解压
$ cd 软件解压路径中的sshUserSetup
$./sshUserSetup.sh -user oracle -hosts "rac1 rac2" -noPromptPassphrase -confirm -advanced
$ vi grid用户下oraInventory/ContentsXML/inventory.xml
找到 这行<HOME NAME="Ora11g_gridinfrahome1" LOC="/opt/grid/products/11.2.0" TYPE="O" IDX="1" CRS="true"> ---添加 CRS="true"即可
------上传响应文件db_install.rsp 详情见db_install文档
--安装
$./runInstaller -silent -responseFile /u01/database/response/db_install.rsp -showProgress -ignorePrereq
执行脚本:现在rac1执行再到rac2上执行:
——-RAC环境搭建完成
—dbca 建库
rac1:
--su - grid
--sqlplus / as sysasm
SQL*Plus: Release 11.2.0.3.0 Production on Tue Oct 8 17:32:35 2013
Copyright (c) 1982, 2011, Oracle. All rights reserved.
Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit Production
With the Real Application Clusters and Automatic Storage Management options
create diskgroup data external redundancy disk '/dev/asm-diske' ATTRIBUTE 'compatible.rdbms' = '11.2','compatible.asm' = '11.2';
rac2 :需要对增加的磁盘组Mount
alter diskgroup data mount;
--rac1 su - grid
$ srvctl add listener
srvctl start listener
SELECT x.ksppinm NAME, y.ksppstvl VALUE, x.ksppdesc describ
FROM SYS.xksppi x, SYS.xksppcv y
WHERE x.inst_id = USERENV ('Instance')
AND y.inst_id = USERENV ('Instance')
AND x.indx = y.indx
AND x.ksppinm like '%high%';
alter system set "_high_priority_processes"='LMS*' scope=spfile;
---
dbca -silent -createDatabase -templateName General_Purpose.dbc -gdbname ora -sid ora -sysPassword yunq111 -systemPassword yunq111 -datafileDestination '+DATADG' -redoLogFileSize 50 -recoveryAreaDestination '+DATADG' -storageType ASM -asmsnmpPassword oracle -diskGroupName '+DATADG' -responseFile NO_VALUE -characterset AL32UTF32 -nationalCharacterSet AL32UTF8 -sampleSchema false -automaticMemoryManagement true -totalMemory 500 -nodeinfo rac1,rac2
---静默安装不行,图形安装
--打开xmanager passive,利用xshell
--# export DISPLAY=本机IP:0.0
---# xhost +
-$dbca
---安装VNC
-查询是否安装vnc服务器
rpm -qa|grep vnc-server
yum install vnc* -y
vncserver
cd $HOME/.vnc
vi xtartup
--注释最后一行,添加如下
gnome &
vi /etc/sysconfig/vncservers
--按照最后两行的格式添加1:root 1024x768
service vncserver restart
---以上VNC服务器配置完成!
--VNC view连接
--#xhost +
--切换用户,安装软件
版权声明:本文为博主原创文章,未经博主允许不得转载。



