redhat linux RHEL 6.4 安装 oracle11g Rac练习

最近单位买了很多服务器,小型机……搞了个培训,
oracle从2001年版本7开始用,用到2010年,不想用了,用postgres,现在又来了。


postgres没什么不好,以后自己就用postgres,平时维护一下单位的oracle rac。


安装过程大概如下:


安装redhat
安装必要包,gcc等
配置ntp
配置ip hosts,共需要5个ip
更改内核参数
配置grid oracle用户 环境变量
挂载共享盘
安装grid,在共享盘上装asm,过程中自动配置集群用户互联,这一步问题多,
安装oracle






具体步骤:
export   LANG=zh_CN.GB2312
export   LC_ALL=zh_CN.GB2312
export   LANG=en_US.UTF-8
export   LC_ALL=en_US.UTF-8
echo 'shopt -s autocd'>> .bashrc
echo 'alias s="screen -R"'>> .bashrc






安装linux 需要gcc ,选择的时候注意




如果没装gcc libstdc++
光盘挂载到mnt
mount -t iso9660 /dev/cdrom /mnt
cp /etc/yum.repos.d/rhel-source.repo /etc/yum.repos.d/rhel-source.repo.bak
rm -rf /etc/yum.repos.d/rhel-source.repo 
touch /etc/yum.repos.d/rhel-source.repo 
echo '[rhel-debuginfo]'>>/etc/yum.repos.d/rhel-source.repo 
echo 'name=Red Hat Enterprise Linux $releasever -$basearch - Debug'>>/etc/yum.repos.d/rhel-source.repo 
echo 'baseurl=file:///mnt'>>/etc/yum.repos.d/rhel-source.repo 
echo 'enabled=1'>>/etc/yum.repos.d/rhel-source.repo 
echo 'gpgcheck=0'>>/etc/yum.repos.d/rhel-source.repo 




yum install -y compat-libstdc++*i686
yum install -y compat-libstdc++*x86_64 
yum install -y gcc*
yum install -y compat-libcap*




umount /mnt




更改两个机器的hostname
hostname db1
/etc/sysconfig/network




配ip  priv 和 public 两个ip  priv 不配网关




环境:
Oracle Linux AS 5.5两台
Oracle 11g R2
1、IP规划
echo '#public ip'>>/etc/hosts
echo 'xxx.xxx.237.4 db1'>>/etc/hosts
echo 'xxx.xxx.237.6 db2'>>/etc/hosts
echo '#priv ip'>>/etc/hosts
echo '192.168.12.1  db1-priv'>>/etc/hosts
echo '192.168.12.2  db2-priv'>>/etc/hosts
echo '#vip ip'>>/etc/hosts
echo 'xxx.xxx.237.118  db1-vip'>>/etc/hosts
echo 'xxx.xxx.237.119  db2-vip'>>/etc/hosts
echo '#scan ip'>>/etc/hosts
echo 'xxx.xxx.237.120  db-cluster'>>/etc/hosts
2、磁盘规划
    
+CRS        三个2G的盘
+DGDATA     三个10G的盘
+DGRECOVERY 两个5G的盘
/usr/sbin/groupadd -g 501 oinstall
/usr/sbin/groupadd -g 502 dba
/usr/sbin/groupadd -g 503 oper
/usr/sbin/groupadd -g 504 asmadmin
/usr/sbin/groupadd -g 505 asmoper
/usr/sbin/groupadd -g 506 asmdba
/usr/sbin/useradd -g oinstall -G dba,asmdba,oper oracle
/usr/sbin/useradd -g oinstall -G asmadmin,asmdba,asmoper,oper,dba grid
[root@ora1 ~]# id oracle
uid=501(oracle) gid=501(oinstall) groups=501(oinstall),502(dba),503(oper),506(asmdba)
[root@ora1 ~]# id grid
uid=502(grid) gid=501(oinstall) groups=501(oinstall),502(dba),503(oper),504(asmadmin),505(asmoper),506(asmdba)
mkdir /home/app/
chown -R grid:oinstall /home/app/
chmod -R 775 /home/app/
mkdir -p /home/app/oraInventory
chown -R grid:oinstall /home/app/oraInventory
chmod -R 775 /home/app/oraInventory
mkdir -p /home/app/grid
mkdir -p /home/app/oracle
chown -R grid:oinstall /home/app/grid
chown -R oracle:oinstall /home/app/oracle
chmod -R 775 /home/app/oracle
chmod -R 775 /home/app/grid




passwd grid
passwd oracle
2、修改系统参数:
>vi /etc/security/limits.conf
>#ORACLE SETTING
echo 'grid                 soft    nproc   2047 '>>/etc/security/limits.conf
echo 'grid                 hard    nproc   16384'>>/etc/security/limits.conf
echo 'grid                 soft    nofile  1024'>>/etc/security/limits.conf
echo 'grid                 hard    nofile  65536'>>/etc/security/limits.conf
echo 'oracle               soft    nproc   2047'>>/etc/security/limits.conf
echo 'oracle               hard    nproc   16384'>>/etc/security/limits.conf
echo 'oracle               soft    nofile  1024'>>/etc/security/limits.conf
echo 'oracle               hard    nofile  65536'>>/etc/security/limits.conf




>vi /etc/pam.d/login
>vi /etc/pam.d/login
echo 'session    required     pam_limits.so'>>/etc/pam.d/login




> vi /etc/sysctl.conf
echo '#ORACLE SETTING'>>/etc/sysctl.conf
echo 'fs.aio-max-nr = 1048576'>>/etc/sysctl.conf
echo 'fs.file-max = 6815744'>>/etc/sysctl.conf
echo 'kernel.shmall = 2097152'>>/etc/sysctl.conf
echo 'kernel.shmmax = 2036870912'>>/etc/sysctl.conf
echo 'kernel.shmmni = 4096'>>/etc/sysctl.conf
echo 'kernel.sem = 250 32000 100 128'>>/etc/sysctl.conf
echo 'net.ipv4.ip_local_port_range = 9000 65500'>>/etc/sysctl.conf
echo 'net.core.rmem_default = 262144'>>/etc/sysctl.conf
echo 'net.core.rmem_max = 4194304'>>/etc/sysctl.conf
echo 'net.core.wmem_default = 262144'>>/etc/sysctl.conf
echo 'net.core.wmem_max = 1048586'>>/etc/sysctl.conf




gird时间同步所需要的设置(11gR2新增检查项)
rm -rf /etc/ntp.conf
echo 'server xxx.xxx.237.40' >  /etc/ntp.conf
/etc/sysconfig/ntpd 加上 -x
service ntpd restart
chkconfig ntpd on    






修改grid、oracle用户的.bashrc文件:
#grid 用户配置文件 ORACLE_HOSTNAME请自行设置
echo 'TMP=/tmp; export TMP'>>.bashrc
echo 'TMPDIR=$TMP; export TMPDIR'>>.bashrc
echo 'ORACLE_SID=+ASM2; export ORACLE_SID'>>.bashrc
echo 'ORACLE_BASE=/home/app/oracle; export ORACLE_BASE'>>.bashrc
echo 'ORACLE_HOME=/home/app/grid/product/11.2.0; export ORACLE_HOME'>>.bashrc
echo 'NLS_DATE_FORMAT="yyyy-mm-dd HH24:MI:SS"; export NLS_DATE_FORMAT'>>.bashrc
echo 'THREADS_FLAG=native; export THREADS_FLAG '>>.bashrc
echo 'PATH=$ORACLE_HOME/bin:$PATH; export PATH'>>.bashrc
echo 'THREADS_FLAG=native; export THREADS_FLAG '>>.bashrc
echo 'PATH=$ORACLE_HOME/bin:$PATH; export PATH'>>.bashrc
echo 'if [ $USER = "oracle" ] || [ $USER = "grid" ]; then'>>.bashrc
echo '        if [ $SHELL = "/bin/ksh" ]; then'>>.bashrc
echo '            ulimit -p 16384'>>.bashrc
echo '              ulimit -n 65536'>>.bashrc
echo '  else'>>.bashrc
echo '   ulimit -u 16384 -n 65536'>>.bashrc
echo '      fi'>>.bashrc
echo '    umask 022'>>.bashrc
echo 'fi'>>.bashrc
echo 'shopt -s autocd'>> .bashrc
echo 'alias h=history'>> .bashrc




#oracle用户配置文件 ORACLE_HOSTNAME请自行设置
# Oracle Settings oracle
echo 'TMP=/tmp; export TMP'>>.bashrc
echo 'TMPDIR=$TMP; export TMPDIR'>>.bashrc
echo 'ORACLE_BASE=/home/app/oracle; export ORACLE_BASE'>>.bashrc
echo 'ORACLE_HOME=$ORACLE_BASE/product/11.2.0; export ORACLE_HOME'>>.bashrc
echo 'ORACLE_SID=db2; export ORACLE_SID'>>.bashrc
echo 'ORACLE_TERM=xterm; export ORACLE_TERM'>>.bashrc
echo 'PATH=/usr/sbin:$PATH; export PATH'>>.bashrc
echo 'PATH=$ORACLE_HOME/bin:$PATH; export PATH'>>.bashrc
echo 'LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib; export LD_LIBRARY_PATH'>>.bashrc
echo 'CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib; export CLASSPATH'>>.bashrc
echo 'NLS_DATE_FORMAT="yyyy-mm-dd HH24:MI:SS"; export NLS_DATE_FORMAT'>>.bashrc
echo 'NLS_LANG=AMERICAN_AMERICA.ZHS16GBK;export NLS_LANG'>>.bashrc
echo 'if [ $USER = "oracle" ] || [ $USER = "grid" ]; then'>>.bashrc
echo '        if [ $SHELL = "/bin/ksh" ]; then'>>.bashrc
echo '         ulimit -p 16384'>>.bashrc
echo '              ulimit -n 65536'>>.bashrc
echo '        else'>>.bashrc
echo '              ulimit -u 16384 -n 65536'>>.bashrc
echo '        fi'>>.bashrc
echo '        umask 022'>>.bashrc
echo 'fi'>>.bashrc
echo 'shopt -s autocd'>> .bashrc
echo 'alias h=history'>> .bashrc




第三快盘在VMware虚拟机上,scsi控制器选虚拟,盘选独立,scsi选1:0
scsi_id --whitelisted --replace-whitespace --device=/dev/sdb
得到36000c298d3831737af4c7720c484e9a6
>vi /etc/udev/rules.d/99-oracle-asmdevices.rules
echo 'KERNEL=="sdb", BUS=="scsi", PROGRAM=="/sbin/scsi_id --whitelisted --replace-whitespace --device=/dev/sdb", RESULT=="36000c298d3831737af4c7720c484e9a6", NAME="asm-disk1", OWNER="grid", GROUP="asmadmin", MODE="0660"'>>/etc/udev/rules.d/99-oracle-asmdevices.rules


/sbin/start_udev
ls -l /dev/asm*


关闭防火墙


解压安装包
 unzip p13390677_112040_Linux-x86-64_1of7.zip;unzip p13390677_112040_Linux-x86-64_2of7.zip; unzip p13390677_112040_Linux-x86-64_3of7.zip;chown -R grid grid;chown -R oracle database






su grid
cd grid
export DISPLAY=xxx.xxx.235.153:0.0
./runInstaller




到asm的时候 选择路径 /dev/asm*




第一节点执行完2个sh 后,在第二节点先重新执行前面的创建文件夹时的权限命令,再执行2个sh
chown -R grid:oinstall /home/app/
chmod -R 775 /home/app/
chown -R grid:oinstall /home/app/oraInventory
chmod -R 775 /home/app/oraInventory
chown -R grid:oinstall /home/app/grid
chown -R oracle:oinstall /home/app/oracle
chmod -R 775 /home/app/oracle
chmod -R 775 /home/app/grid




oracle user
cd database
export DISPLAY=xxx.xxx.x.x:0.0
./runInstaller




选择oracle base 和product目录前,  执行
chown -R oracle:oinstall /home/app/oracle
chmod -R 775 /home/app/oracle




还得在哪一步执行: chmod 6751 $ORACLE_HOME/bin/oracle


常用命令:


su - grid
crs_stat -t
crsctl check cluster
srvctl status nodeapps
srvctl config database
srvctl config scan




srvctl status scan
crsctl query css votedisk 




tail -n33 /home/app/oracle/diag/rdbms/db/db1/trace/alert_db1.log
tail -n33 /home/app/grid/product/11.2.0/log/db1/alertdb1.log
tail -n33 /home/app/grid/product/11.2.0/log/db1/crsd/crsd.log
tail -n33 /home/app/grid/product/11.2.0/log/db1/cssd/ocssd.log
tail -n33 /home/app/grid/product/11.2.0/log/db1/evmd/evmd.log








root:
export PATH=/home/app/grid/product/11.2.0/bin:$PATH
echo 'export PATH=/home/app/grid/product/11.2.0/bin:$PATH'>>.bashrc
echo 'alias h=history'>> .bashrc




crsctl stop cluster
crsctl stop cluster -all
crsctl stop cluster -f
crsctl start cluster -all
crsctl start cluster 
crsctl check crs
srvctl start listener -n db2




crsctl stop crs
crsctl start crs




ps -ax|grep -i asm
ps -ax|grep -i ora_
ps -ax|grep -i grid




/home/app/grid/product/11.2.0/log/db2/cssd/ocssd.log
/etc/oracle/lastgasp




srvctl start database -d db 
srvctl start instance -d db -i db1




srvctl status database -d db




srvctl stop database -d db -o immediate
srvctl stop instance -d db -i db2 -o immediate




改spfile
srvctl modify database -d db -p '+DATA/...'
srvctl config database -d db -a




卸载
http://blog.csdn.net/tianlesoftware/article/details/5892225




  
select INSTANCE_NAME,STATUS from v$instance;
select INSTANCE_NAME,STATUS from gv$instance;
select * from v$active_instances;




解决sqlplus上下左右键问题


yum install readline-devel.x86_64




1.首先下载rlwrap安装包
http://utopia.knoware.nl/~hlub/uck/rlwrap/




2.解压
tar -zxvf rlwrap-0.37.tar.gz








3.安装
cd rlwrap-0.37
./configure
make
make install




echo 'alias sqlplus="rlwrap sqlplus"'>> .bashrc
echo 'alias rman="rlwrap rman"'>> .bashrc




评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值