1. 配置网络

  1. 网络划分
Interface RAC1 RAC2
Public IP 192.168.88.100 192.168.88.101
Private IP 192.168.137.128 192.168.137.129
VIP 192.168.88.213 192.168.88.214
SCAN 192.168.88.200 192.168.88.200


此时可以由192.168.137.128远程ssh到192.168.88.100,表示两块网卡都能用

进入rac1的/etc/hosts文件,做以下配置

此时在终端ping rac1,结果如下所示,这表示我们上一步的修改已经生效了

2. 划分用户和组

Group grid oracle
oinstall
dba
oper
asmadmin
asmdba
asmoper

分别用grid用户和oracle用户管理集群软件和关系型数据库软件.

  1. 目录划分

Grid Infrastructure

export HOME=/home/grid
export ORACLE_BASE=/u01/gridbase
export ORACLE_HOME=/u01/grid

Oracle Database

export HOME=/home/oracle
export ORACLE_BASE=/u01/oracle
export ORACLE_HOME=/u01/oracle/db

2. 创建组和用户

  1. 创建组,根据前面的组划分创建
[root@rac1 ~]# groupadd oinstall
[root@rac1 ~]# groupadd dba
[root@rac1 ~]# groupadd oper
[root@rac1 ~]# groupadd asmadmin
[root@rac1 ~]# groupadd asmdba
[root@rac1 ~]# groupadd asmoper
  1. 创建用户
useradd -g oinstall -G dba,asmadmin,asmdba,asmoper grid
[root@rac1 ~]# useradd -g oinstall -G dba,oper,asmdba oracle
  1. 更改用户密码
[root@rac1 ~]# passwd oracle
[root@rac1 ~]# passwd grid


切换用户,看看grid和oracle用户的家目录,如下所示

  1. 创建软件安装目录
[root@rac1 u01]# mkdir gridbase
[root@rac1 u01]# mkdir grid
[root@rac1 u01]# mkdir oracle


更改u01目录的所有者及所属组

[root@rac1 u01]# chown -R grid:oinstall /u01


进入u01目录查看子目录的权限,如下所示,我们需要将其中的oracle子目录的所有者改为oracle用户

[root@rac1 u01]# chown -R oracle:oinstall oracle


改变u01目录的权限,因为后面安装软件需要往里面写文件,上面我们已经知道u01目录属于grid用户,其属组是oinstall,且u01目录的权限是755,所以grid用户有读写执行的权限,但是oracle用户只有读和执行的权限,这会导致安装数据库软件时没有权限将安装文件写入相应的目录,所以我们要改变u01目录的权限为775,让oinstall组对其有读写执行的权限,而oracle用户又属于oinstall组,此时oracle用户就拥有了对u01目录的读写执行权限.

[root@rac1 /]# chmod 775 u01

  1. 设置用户的环境变量
    设置grid用户的环境变量
[root@rac1 /]# su - grid
[grid@rac1 ~]$ vi .bash_profile
在 .bash_profile的行末加入以下变量
ORACLE_BASE=/u01/gridbase
ORACLE_HOME=/u01/gridPATH=$ORACLE_HOME/bin:$PATH
LD_LIBRARY_PATH=$ORACLE_HOME/lib:$LD_LIBRARY_PATHDISPLAY=192.168.88.72:0.0export ORACLE_BASE ORACLE_HOME PATH LD_LIBRARY_PATH DISPLAY


设置oracle用户的环境变量

[grid@rac1 ~]$ vi .bash_profile
[grid@rac1 ~]$ su - oracle
Password:
[oracle@rac1 ~]$ vi .bash_profile
在 .bash_profile的行末加入以下变量
ORACLE_BASE=/u01/oracle
ORACLE_HOME=/u01/oracle/db
ORACLE_SID=racdb1
PATH=$ORACLE_HOME/bin:$PATH
LD_LIBRARY_PATH=$ORACLE_HOME/lib:$LD_LIBRARY_PATHDISPLAY=192.168.88.72:0.0export ORACLE_BASE ORACLE_HOME ORACLE_SID PATH LD_LIBRARY_PATH DISPLAY


安装一个小工具rlwrap,但是安装过程中出现一个小错误

根据错误提示要安装一个readline库,我用yum源安装就好了,安装好再次安装rlwrap即可

[root@rac1 rlwrap-0.37]# yum -y install readline*



将rlwrap命令的命令的简写加入oracle用户和grid用户的环境变量中,到时可以直接在shell中输入命令运行

3. 配置内核参数

关闭防火墙
[root@rac1 /]# chkconfig iptables off
关闭selinux
[root@rac1 selinux]# vi /etc/selinux/config


修改内核参数

[root@rac1 selinux]# vi /etc/sysctl.conf                 //进入该文件,添加下面的配置参数
[root@rac1 selinux]# sysctl -p                           //修改后保存退出,运行此命令使修改生效fs.aio-max-nr = 1048576
fs.file-max = 6815744
kernel.shmall = 4294967296
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 = 1048576

进入/etc/profile进行配置

[root@rac1 selinux]# vi /etc/profile            //在行末加入下列代码,保存退出
if [ $USER = "oracle" ] || [$USER = "grid" ]; thenif [ \$SHELL = "/bin/ksh" ]; thenulimit -p 16384ulimit -n 65536else ulimit -u 16384 -n 65536fiumask 022
fi

进入/etc/security/limits.conf进行配置

[root@rac1 /]# 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
[root@rac1 /]# vi /etc/pam.d/login                    //在行末加入下面的语句
session    required     pam_limits.so

因为Oracle数据库的运行需要大内存,所以做以下操作,当然也可以不做,可以自行查一下

[root@rac1 /]# umount tmpfs
[root@rac1 /]# mount -t tmpfs shmfs -o size=3000m /dev/shm

进一步进入/etc/fstab配置如下

[root@rac1 /]# vi /etc/fstab

4. 时间同步
在此我们使用oracle rac的ctssd同步功能而不使用linux系统自带的ntpd同步功能
首先,关闭ntpd服务

[root@rac1 /]# service ntpd stop    //关闭ntpd
[root@rac1 /]# chkconfig ntpd off       //禁止ntpd开机自启

将ntpd的配置文件隐藏,如下

[root@rac1 /]# cd /etc
[root@rac1 etc]# ls ntp*
ntp.confntp:
crypto  keys  step-tickers
[root@rac1 etc]# mv ntp.conf  ntp.conf.backup
进入下面的文件看一下有无ntpd.pid,有的话删掉
[root@rac1 etc]# cd /var/run
[root@rac1 run]# ls -l *.pid
[root@rac1 run]# rm -f /var/run/ntpd.pid


将上图中的ntpd.pid删除就可以了

配置rac1和rac2远程互信,这个可以在网上自行找教程,后面有时间再出教程

安装依赖包,我用的rpm命令安装的,这里不演示,缺少包的私聊找我要就可以了,我的安装过前的配置检查出现下面的问题,问题不大,照着改一下就可以了


在安装缺少的包时,出现环形依赖,只要同时安装两个包就可以了,如下图所示

解决问题后再次检查环境配置就通过了

就接下来,进入grid的安装























到此Oracle11gR2 rac安装结束 ,接下来就是安装数据库软件,安装方法参见我另外一片博客.

Linux部署Oracle11gR2 RAC详细教程相关推荐

  1. 虚拟机VMware Workstation安装Linux服务器Debian11系统详细教程

    虚拟机VMware Workstation安装Linux服务器Debian11系统详细教程如下: 准备好: 1.安装好虚拟机VMware Workstation 2.从Linux开源镜像下载的debi ...

  2. iis服务器部署项目,IIS环境下部署项目的详细教程

    分享IIS环境下部署项目的详细教程 1.环境部署 1.1安装IIS7 进入控制面板,选择"程序和功能",进入如下页面后 找到World Wide Web Services,确保选中 ...

  3. 企业版mysql安装教程linux,linux上mysql安装详细教程

    所有平台的MySQL下载地址为: MySQL 下载. 挑选你需要的 MySQL Community Server 版本及对应的平台. MySQL - MySQL服务器.你需要该选项,除非你只想连接运行 ...

  4. Linux部署python接口自动化教程,基于centos7 python3

    Linux部署python接口自动化教程 1.安装jenkins 2.安装插件和依赖 **安装allure插件(测试报告)** **配置allure依赖** 安装python3.x依赖环境 **安装p ...

  5. asp项目如何部署到服务器,IIS环境下部署项目的详细教程

    分享IIS环境下部署项目的详细教程 1.环境部署 1.1安装IIS7 进入控制面板,选择"程序和功能",进入如下页面后,点击"Turn Windows features ...

  6. Linux系统安装Nodejs(详细教程)

    Linux系统安装Nodejs(详细教程) 介绍: ​ Node.js发布于2009年5月,由Ryan Dahl开发,是一个基于Chrome V8引擎的JavaScript运行环境,使用了一个事件驱动 ...

  7. linux的ntp怎么配置,linux配置ntp的详细教程

    今天小编给大家带来一篇关于linux配置ntp的详细教程,感兴趣的朋友跟小编一起来了解一下吧! 在linux下,我们可以通过自带的NTP(Network Time Protocol)协议通过网络使自己 ...

  8. 阿里云轻量级服务器部署springboot项目详细教程--保姆级入门

    目录 一.服务器的配置与连接 1.配置服务器初始密码 2.进行远程连接 二. 项目部署相关的软件安装 1.JDK的安装 2.Tomcat的安装 3.MySQL的安装 三. 项目部署服务器 1.修改项目 ...

  9. linux安装 Android Studio详细教程,支持性较差,需要安装最新底层库内核的linux

    安装 Android Studio详细教程 libc6-i386 lib32stdc++6 lib32gcc1 lib32ncurses5 lib32z1 jdk1.8.0_25 android-st ...

最新文章

  1. hbase redis mongoddb neo4j 非关系型数据库简介
  2. UITableView的beginUpdates和endUpdates
  3. 腐蚀函数cvErode 和 膨胀函数cvDilate
  4. mybatis学习(35):sql-where
  5. android滑动开关框架,Android之实现滑动开关组件
  6. Linux 调整内核参数
  7. PostgreSQL / openGauss 数据库易犯的十个错误
  8. html5 canvas修改颜色,html5 canvas 笔记二(添加样式和颜色)
  9. 管理者每天要做的十件事
  10. mysql/mariadb主从复制
  11. Python实现输入电影名字自动生成豆瓣评论词云图(带GUI界面)小程序
  12. python科学计算的例子_Python科学计算:NumPy
  13. 六、容器(高琪java300集+java从入门到精通笔记)
  14. 电脑动态壁纸软件哪个好用:试试Wallpaper Engine离线版吧
  15. GitHub上20多万张不可描述图片的数据集
  16. 《禅与摩托车维修艺术》(罗伯特·M·波西格)骑行路上的哲学思考 Zen and the Art of Motorcycle Mt...
  17. package编译不过如何处理
  18. PS海绵工具加深工具简单工具的区别
  19. 基于SpringBoot+VUE的线上教学管理平台系统
  20. python数据去重(pandas)

热门文章

  1. 架构师小跟班:SSL证书免费申请及部署,解决页面样式错乱问题
  2. 【记录十七】Sling JCR Resources
  3. 慕尼黑工业大学人形机器人,不依赖人类感知和决策能力自主行走
  4. python返回索引值_python 返回列表中某个值的索引方法
  5. 视频监控系统中流媒体服务器的主要功能,流媒体存储服务器在视频监控中被正确使用?它有哪些显著的优点?...
  6. STM32单片机低功耗剖析
  7. 产品经理的总结(一)
  8. vue进入浏览器大屏
  9. Centos7搭建SpringBlade的前端Saber
  10. 弹性地基梁板法计算原理_平面弹性地基梁法,详细讲解!