rhel7安装Oracle 19C RAC

news2024/11/28 4:27:44

一、安装环境准备

1.1./dev/shm作为tmpfs挂载

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

--写入/etc/fstab
vi /etc/fstab
tmpfs      /dev/shm       tmpfs     defaults,size=3.9G     0 0

1.2.关闭防火墙

systemctl stop firewalld.service
systemctl disable firewalld.service

1.3.关闭selinux

vim /etc/selinux/config
SELINUX=disabled

1.4.关闭avahi-daemon

systemctl stop avahi-daemon.socket
systemctl disable avahi-daemon.socket

1.5.关闭NetworkManager

systemctl stop  NetworkManager.service
systemctl disable NetworkManager.service

1.6.关闭numa

vi /etc/default/grub
GRUB_CMDLINE_LINUX="crashkernel=auto rd.lvm.lv=rhel/root rd.lvm.lv=rhel/swap rhgb quiet numa=off"

--使更改生效
grub2-mkconfig -o /etc/grub2.cfg

1.7.配置hosts

vi /etc/hosts
192.x.x.1	rac1
192.x.x.2	rac2
10.0.0.1	rac1-priv
10.0.0.2	rac2-priv
192.x.x.3	rac1-vip
192.x.x.4	rac2-vip
192.x.x.5	rac-scan

1.8.配置私有网卡

vi /etc/sysconfig/network-scripts/ifcfg-eth1 
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=none
DEFROUTE=yes
NAME=eth1
DEVICE=eth1
ONBOOT=yes
IPADDR=10.0.0.1
NETMASK=255.255.255.0

--私有网卡连通测试
[root@localhost ~]# traceroute rac2-priv
traceroute to rac2-priv (10.0.0.2), 30 hops max, 60 byte packets
 1  rac2-priv (10.0.0.2)  1.271 ms  1.153 ms  1.101 ms

[root@localhost ~]# traceroute rac1-priv
traceroute to rac1-priv (10.0.0.1), 30 hops max, 60 byte packets
 1  rac1-priv (10.0.0.1)  1.271 ms  1.153 ms  1.101 ms

1.9.安装所需软件包

--配置yum
vi /etc/yum.repos.d/rhel.repo 
[rhel]
name=rhel
baseurl=file:///mnt
enabled=1
gpgcheck=0

--挂载os镜像文件
mount /dev/sr0 /mnt
或
mount -o loop XXXXX.iso /mnt

--开始安装
echo 'multilib_policy=all' >> /etc/yum.conf
yum install binutils compat-libcap1 compat-libstdc++-33 e2fsprogs e2fsprogs-libs gcc gcc-c++ glibc glibc-devel libaio libaio-devel libX11 libXau libXi libXtst libgcc libstdc++ libstdc++-devel libxcb make nfs-utils smartmontools sysstat net-tools ksh unixODBC unixODBC-devel lsscsi* openssh -y

1.10.内核参数

/etc/sysctl.conf 文件已被弃用

vim /etc/sysctl.d/97-oracle-database-sysctl.conf
kernel.shmmax = XXXXXX
kernel.shmall = XXXXXX
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
fs.aio-max-nr = 4194304
fs.file-max = 6815744
vm.min_free_kbytes=524288
kernel.panic_on_oops = 1
kernel.randomize_va_space=0
net.ipv4.conf.eth1.rp_filter=2

--使修改生效
sysctl -p

1.11.Oracle的shell限制

vi /etc/security/limits.conf
grid                 soft    nofile  1024
grid                 hard    nofile  65536
grid                 hard    stack   32768
grid                 soft    stack   10240
oracle               soft    nofile  1024
oracle               hard    nofile  65536
oracle               hard    stack   32768
oracle               soft    stack   10240
oracle              hard    memlock  3145728
oracle              soft    memlock  3145728

--使上面参数生效
vi /etc/pam.d/login
session    required     pam_limits.so

--rhel7或更高版本修改
vi /etc/security/limits.d/20-nproc.conf
grid                 soft    nproc   2047
grid                 hard    nproc   16384
oracle               soft    nproc   2047
oracle               hard    nproc   16384

vi /etc/profile
if [ $USER = "oracle" ] || [ $USER = "grid" ]; then
if [ $SHELL = "/bin/ksh" ]; then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
umask 022
fi

1.12.设置时间和时区

--时间
date -s "20100405 14:31:00"

--时区
timedatectl set-timezone Asia/Shanghai

--关闭时间同步
systemctl stop chronyd
systemctl disable chronyd
mv /etc/chrony.conf /etc/chrony.conf.ora

1.13.修改主机名

hostnamectl set-hostname rac1
hostnamectl set-hostname rac2

1.14.添加用户组

/usr/sbin/groupadd -g 54321 oinstall
/usr/sbin/groupadd -g 54322 dba
/usr/sbin/groupadd -g 54323 oper
/usr/sbin/groupadd -g 54324 backupdba
/usr/sbin/groupadd -g 54325 dgdba
/usr/sbin/groupadd -g 54326 kmdba
/usr/sbin/groupadd -g 54327 asmdba
/usr/sbin/groupadd -g 54328 asmoper
/usr/sbin/groupadd -g 54329 asmadmin
/usr/sbin/groupadd -g 54330 racdba
/usr/sbin/useradd -u 54331 -g oinstall -G dba,asmdba,asmoper,asmadmin,racdba grid
/usr/sbin/useradd -u 54321 -g oinstall -G dba,oper,backupdba,dgdba,kmdba,asmdba,racdba oracle

--修改密码
passwd grid 
passwd oracle

1.15.创建所需安装目录

mkdir -p /u01/app/19.3.0/grid
mkdir -p /u01/app/grid
mkdir -p /u02/app/oracle/product/19.3.0/db_home
chown -R grid:oinstall /u01/
chown -R oracle:oinstall /u02/
chmod -R 775 /u01/ /u02/

1.16.修改环境变量

--grid
export ORACLE_SID=+ASM1
export ORACLE_BASE=/u01/app/grid
export ORACLE_HOME=/u01/app/19.3.0/grid
export PATH=$ORACLE_HOME/bin:$PATH:$HOME/bin:$ORACLE_PATH
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib
export CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib

--oracle
export ORACLE_SID=orcl1
export ORACLE_BASE=/u02/app/oracle
export ORACLE_HOME=/u02/app/oracle/product/19.3.0/db_home
export PATH=$ORACLE_HOME/bin:$PATH:$HOME/bin
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:$ORACLE_HOME/lib32:$ORACLE_HOME/rdbms/lib:/lib:/usr/lib
export CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib

1.17.配置共享磁盘

--生成multipath.conf文件
/sbin/mpathconf --enable

--修改配置文件,注意修改wwid号和别名
vi /etc/multipath.conf
defaults {
       polling_interval        5
       path_grouping_policy    multibus
       prio                    const
       path_checker            directio
       rr_min_io               1000
       rr_weight               uniform
       failback                manual
       no_path_retry           fail
       user_friendly_names     yes
}
 
blacklist { 
        devnode "^(ram|raw|loop|fd|md|dm-|sr|scd|st)[0-9]*"
        devnode "^hd[a-z]"
        devnode "^cciss!c[0-9]d[0-9]*"
}

multipaths { 
multipath {
                wwid    1ATA_VBOX_HARDDISK_VBef5230c9-f846239d --磁盘wwid号
                alias   data
                path_grouping_policy multibus
        }
        multipath {
                wwid    1ATA_VBOX_HARDDISK_VBa01c30ba-b337fdcf
                alias   fra
                path_grouping_policy multibus
        }
        multipath {
                wwid    1ATA_VBOX_HARDDISK_VBbe1bb2fa-0727f67c
                alias   ocr
                path_grouping_policy multibus
        }
}

--启动服务
systemctl start multipathd.service
systemctl status multipathd.service
systemctl enable multipathd.service

--查看
multipath -ll

--修改磁盘权限
vi /etc/udev/rules.d/19-asm-oracle.rules
ENV{DM_NAME}=="ocr", OWNER:="grid", GROUP:="asmadmin", MODE:="660", SYMLINK+="mapper/$env{DM_NAME}"
ENV{DM_NAME}=="data", OWNER:="grid", GROUP:="asmadmin", MODE:="660", SYMLINK+="mapper/$env{DM_NAME}"
ENV{DM_NAME}=="fra", OWNER:="grid", GROUP:="asmadmin", MODE:="660", SYMLINK+="mapper/$env{DM_NAME}"

--使更改生效
/sbin/udevadm trigger --type=devices --action=change

--查看权限
ls -l /dev/dm-*

1.18.裸设备绑定(可选)

vi /etc/udev/rules.d/19-oracle-asm.rules
ACTION=="add", KERNEL=="sdd", RUN+="/bin/raw /dev/raw/raw1 %N"
ACTION=="add", KERNEL=="sde", RUN+="/bin/raw /dev/raw/raw2 %N"
ACTION=="add", KERNEL=="sdf", RUN+="/bin/raw /dev/raw/raw3 %N"
ACTION=="add", KERNEL=="sdg", RUN+="/bin/raw /dev/raw/raw4 %N"
ACTION=="add", KERNEL=="sdh", RUN+="/bin/raw /dev/raw/raw5 %N"
ACTION=="add", KERNEL=="sdi", RUN+="/bin/raw /dev/raw/raw6 %N"

KERNEL=="raw1", MODE="0660", OWNER:="grid", GROUP:="asmadmin"
KERNEL=="raw2", MODE="0660", OWNER:="grid", GROUP:="asmadmin"
KERNEL=="raw3", MODE="0660", OWNER:="grid", GROUP:="asmadmin"
KERNEL=="raw4", MODE="0660", OWNER:="grid", GROUP:="asmadmin"
KERNEL=="raw5", MODE="0660", OWNER:="grid", GROUP:="asmadmin"
KERNEL=="raw6", MODE="0660", OWNER:="grid", GROUP:="asmadmin"

--使更改生效
systemctl restart systemd-udev-trigger.service

--查看权限
ls -l /dev/raw/*

二、开始安装

2.1.安装GI

su - grid
unzip LINUX.X64_193000_grid_home.zip -d $ORACLE_HOME
cd $ORACLE_HOME
./gridSetup.sh

部分安装截图如下:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2.2.创建ASM磁盘组

su - grid
asmca

在这里插入图片描述

2.3.安装Oracle

su - oracle
unzip LINUX.X64_193000_db_home.zip -d $ORACLE_HOME
cd $ORACLE_HOME
./runInstaller

部分安装截图如下:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2.4.创建数据库

su - oracle
dbca

部分安装截图如下:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

三、检查集群

[grid@rac1 ~]$ crsctl stat res -t
--------------------------------------------------------------------------------
Name           Target  State        Server                   State details       
--------------------------------------------------------------------------------
Local Resources
--------------------------------------------------------------------------------
ora.LISTENER.lsnr
               ONLINE  ONLINE       rac1                   STABLE
               ONLINE  ONLINE       rac2                   STABLE
ora.chad
               ONLINE  ONLINE       rac1                   STABLE
               ONLINE  ONLINE       rac2                   STABLE
ora.net1.network
               ONLINE  ONLINE       rac1                   STABLE
               ONLINE  ONLINE       rac2                   STABLE
ora.ons
               ONLINE  ONLINE       rac1                   STABLE
               ONLINE  ONLINE       rac2                   STABLE
--------------------------------------------------------------------------------
Cluster Resources
--------------------------------------------------------------------------------
ora.ASMNET1LSNR_ASM.lsnr(ora.asmgroup)
      1        ONLINE  ONLINE       rac1                   STABLE
      2        ONLINE  ONLINE       rac2                   STABLE
      3        OFFLINE OFFLINE                             STABLE
ora.DATA.dg(ora.asmgroup)
      1        ONLINE  ONLINE       rac1                   STABLE
      2        ONLINE  ONLINE       rac2                   STABLE
      3        ONLINE  OFFLINE                             STABLE
ora.FRA.dg(ora.asmgroup)
      1        ONLINE  ONLINE       rac1                   STABLE
      2        ONLINE  ONLINE       rac2                   STABLE
      3        ONLINE  OFFLINE                             STABLE
ora.LISTENER_SCAN1.lsnr
      1        ONLINE  ONLINE       rac1                   STABLE
ora.OCR.dg(ora.asmgroup)
      1        ONLINE  ONLINE       rac1                   STABLE
      2        ONLINE  ONLINE       rac2                   STABLE
      3        OFFLINE OFFLINE                             STABLE
ora.asm(ora.asmgroup)
      1        ONLINE  ONLINE       rac1                   Started,STABLE
      2        ONLINE  ONLINE       rac2                   Started,STABLE
      3        OFFLINE OFFLINE                             STABLE
ora.asmnet1.asmnetwork(ora.asmgroup)
      1        ONLINE  ONLINE       rac1                   STABLE
      2        ONLINE  ONLINE       rac2                   STABLE
      3        OFFLINE OFFLINE                             STABLE
ora.cvu
      1        ONLINE  ONLINE       rac1                   STABLE
ora.orcl.db
      1        ONLINE  ONLINE       rac1                   Open,HOME=/u02/app/o
                                                           racle/product/19.3.0
                                                           /db_home,STABLE
      2        ONLINE  ONLINE       rac2                   Open,HOME=/u02/app/o
                                                           racle/product/19.3.0
                                                           /db_home,STABLE
ora.qosmserver
      1        ONLINE  ONLINE       rac1                   STABLE
ora.rac1.vip
      1        ONLINE  ONLINE       rac1                   STABLE
ora.rac2.vip
      1        ONLINE  ONLINE       rac2                   STABLE
ora.scan1.vip
      1        ONLINE  ONLINE       rac1                   STABLE
--------------------------------------------------------------------------------

[grid@rac1 ~]$ crsctl check crs
CRS-4638: Oracle High Availability Services is online
CRS-4537: Cluster Ready Services is online
CRS-4529: Cluster Synchronization Services is online
CRS-4533: Event Manager is online

[grid@rac1 ~]$ crsctl check ctss
CRS-4701: The Cluster Time Synchronization Service is in Active mode.
CRS-4702: Offset (in msec): 0

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/843925.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

微服务——RestClient查询文档

快速入门 返回结果直接把json风格的结果封装为SearchReponse对象返回 public class HotelSearchTest {private RestHighLevelClient client;Testvoid testMatchAll() throws IOException {//1.准备requestSearchRequest request new SearchRequest("hotel");//2.准…

嵌入式基础知识-存储管理

上篇介绍了存储器的相关知识,偏重的是硬件结构,本篇介绍存储管理的相关知识,偏重的是软件管理。 1 存储管理概念 操作系统,包括嵌入式系统,通常利用存储管理单元MMU(Memory Management Unit)来…

OB数据库基础知识(学习记录)

目录 OB业务场景 公司使用理由: 常见 bootstrap 失败原因 常见OBD 部署 失败原因 Grafana 查看集群资源由各个节点的聚合情况 OB创建租户 表分组的场景 mysqldump到处数据库schema,数据库数据,表数据 数据同步框架 DATAX obdumper…

支付总架构解析

一、支付全局分层 一笔支付以用户为起点,经过众多支付参与者之后,到达央行的清算账户,完成最终的资金清算。那么我们研究支付宏观,可以站在央行清算账户位置,俯视整个支付金字塔,如图1所示: 图…

Java课题笔记~6个重要注解参数含义

1、[掌握]Before 前置通知-方法有 JoinPoint 参数 在目标方法执行之前执行。被注解为前置通知的方法,可以包含一个 JoinPoint 类型参数。 该类型的对象本身就是切入点表达式。通过该参数,可获取切入点表达式、方法签名、目标对象等。 不光前置通知的方…

乍得ECTN(BESC)申请流程

根据TCHAD/CHAD乍得法令,自2013年4月1日起,所有运至乍得的货物都必须申请ECTN(BESC)电子货物跟踪单。如果没有申请,将被视为触犯乍得的条例,并在目的地受到严厉惩罚。ECTN是英语ELECTRONIC CARGO TRACKING NOTE的简称;…

EFLFK——ELK日志分析系统+kafka+filebeat架构

环境准备 node1节点192.168.40.16elasticsearch2c/4Gnode2节点192.168.40.17elasticsearch2c/4GApache节点192.168.40.170logstash/Apache/kibana2c/4Gfilebeat节点192.168.40.20filebeat2c/4G https://blog.csdn.net/m0_57554344/article/details/132059066?spm1001.2014.30…

oracle的管道函数

Oracle管道函数(Pipelined Table Function)oracle管道函数 1、管道函数即是可以返回行集合(可以使嵌套表nested table 或数组 varray)的函数,我们可以像查询物理表一样查询它或者将其赋值给集合变量。 2、管道函数为并行执行,在…

【数据结构与算法】十大经典排序算法-冒泡排序

🌟个人博客:www.hellocode.top 🏰Java知识导航:Java-Navigate 🔥CSDN:HelloCode. 🌴掘金:HelloCode 🌞知乎:HelloCode ⚡如有问题,欢迎指正&#…

VSCode中如何修改代码字体

通过「File」→「Preferences」→「Settings」→「Text Editor」→「Font」→「Font Family」中,修改对应的字体即可。因为比较喜欢 JetBrains Mono,所以设置的字体是这个。 其中Jetbrains Mono字体需要自己在Jetbrains官网下载,然后中文字体…

09. Docker Compose

目录 1、前言 2、安装Docker Compose 2.1、Docker Compose版本 2.2、下载安装 3、初试Docker Compose 3.1、传统方案部署应用 3.2、使用编排部署应用 3.3、其他命令 3.3.1、ps 3.3.2、images 3.3.3、depends_on 3.3.4、scale 4、小结 1、前言 随着应用架构的不段…

Scala按天写入日志文件

如果希望把每天出错的信息写入日志文件,每天新建一个文件。 package test.scala import java.io.{File, FileWriter} import java.text.SimpleDateFormat import java.util.{Calendar, Date} import scala.concurrent.ExecutionContext.Implicits.global import sc…

Linux(CentOS7)系统磁盘分区及挂载

新购买的阿里云服务器,默认硬盘容量肯定不够用,需要额外购买硬盘,购买后需要对硬盘进行分区及挂载操作,下面是硬盘分区及挂载操作步骤: 1、查看未挂载的硬盘(名称为/dev/vdb), 执行命令 fdisk …

SpringBoot运行流程源码分析------阶段二(run方法核心流程)

run方法核心流程 在分析和学习整个run方法之前,我们可以通过以下流程图来看下SpringApplication调用的run方法处理的核心操作包含哪些。 从上面的流程图中可以看出,SpringApplication在run方法中重点做了以下几步操作 获取监听器和参数配置打印banner…

懒人的百宝箱,效率回归,工具库之美「GitHub 热点速览」

懒人的百宝箱,效率回归,工具库之美「GitHub 热点速览」。 刚开源就变成新星的 igl,不仅获得了 2k star,也能提高你开发游戏的效率,摆平一切和图形有关的问题。如果这个没有那么惊艳的话,还有 The-Art-of-L…

CTFshow web93-104关

这周要学习的是php代码审计 根据师兄的作业 来做web入门的93-104关 93关 看代码 进行分析 他的主函数 include("flag.php"); highlight_file(__FILE__); if(isset($_GET[num])){ $num $_GET[num]; if($num4476){ die("no no no!"); …

nuxt脚手架创建项目

在初始化时遇到一个依赖找不到的问题,记录一下,如有遇到同样问题的小伙伴,希望能给你们一点指引。 从安装脚手架开始,首先 一:安装nuxt脚手架 1. C盘全局安装: npm i -g create-nuxt-app 安装后可creat…

云迁移解决方案

云迁移是指将应用程序和数据从一个位置(通常是公司自有的现场(“本地”服务器)迁移到公有云提供商的服务器的过程,但也指在不同的云之间进行迁移的过程。云迁移的主要优势包括降低 IT 成本和提高性能,但也存在安全性、…

EVE-NG MPLS L2VPN LDP lsp

目录 1 拓扑 2 配置步骤 2.1 配置接口IP 和路由协议 2.2 配置MPLS LDP 2.3 配置L2VPN PW(LDP) 2.4 验证L2VPN 1 拓扑 2 配置步骤 2.1 配置接口IP 和路由协议 PE1 interface LoopBack 0ip address 1.1.1.9 32 quitinterface GigabitEthernet1/0ip address 10.1.1.1 25…

Docker-compose应用

Docker-compose Docker-compose 是Dcoker官方推出的Docker容器的一键编排工具,使用Docker-compose可以批量启动容器、停止容器等等。 安装 github地址 https://github.com/docker/compose/tree/v2.20.1 下载地址 https://github.com/docker/compose/releases …