银河麒麟高级服务器操作系统(ADM64 版)V10(SP1)搭建 Oracle 19c RAC

麒麟软件有限公司

Oracle19c-19.3.0.0 RAC 安装

|------|------------------|----|------------|
| 文档编号 | Ky-jx-2022-03-14 | 日期 | 2022-03-14 |

Advanced Server V10 (SP1)

|------|------|------|------------------|
| 文档等级 | 内部文件 | 操作系统 | Build20/20210518 |

x86_64

|-------|----------------|
| ■版权声明 | ©2022 麒麟软件 |

■版权声明

本文档所涉及到的文字、图表等,仅限于麒麟软件有限公司及被呈送方内部使用,未经麒麟软件有限公司

书面许可,请勿扩散到第三方。

注:麒麟的内核是CenterOS 7-8

■版本变更记录

|------------|-----|----|-----|
| 时间 | 版本 | 说明 | 参与人 |
| 2022/03/14 | 1.0 | 创建 | 熊佳 |

■适用性声明

本文档用于银河麒麟高级服务器操作系统(ADM64 版)V10(SP1)搭建 Oracle 19c RAC。

麒麟软件有限公司

目录

Oracle19c-19.3.0.0 RAC 安装.......................................................................................................... 1

  1. 说明..................................................................................................................................................... 1

  2. 软件下载............................................................................................................................................. 2

  3. 准备工作............................................................................................................................................. 2

3.1. 机器规划................................................................................................................................. 2

3.2. 配置 IP 等相关服务(两节点都需要配置)........................................................................3

3.2.1. 配置主机名.............................................................................................................. 3

3.2.2. 配置 IP......................................................................................................................4

3.2.3. 开启 SSH 服务........................................................................................................ 4

3.2.4. 添加 IP 信息.............................................................................................................4

3.2.5. 关闭时间服务.......................................................................................................... 5

3.2.6. 关闭防火墙.............................................................................................................. 5

3.2.7. 关闭 SELINUX........................................................................................................ 6

3.3. 检查所需安装包(两节点都需要)..................................................................................... 6

3.4. 修改参数(两节点都需要修改)............................................................................................... 6

3.4.1. 修改/etc/sysctl.conf 配置文件........................................................................... 6

3.4.2. 修改/etc/security/limits.conf 配置文件.......................................................... 7

3.4.3. 修改/etc/pam.d/login 配置文件.........................................................................8

3.4.4. 修改/etc/profile 配置文件:................................................................................8

3.4.5. 配置 NOZEROCONF.............................................................................................8

3.4.6. 添加用户及组.......................................................................................................... 8

麒麟软件有限公司

3.4.7. 创建需要的目录...................................................................................................... 9

3.4.8. 配置 oracle 用户的环境变量................................................................................ 9

3.4.9. 配置 grid 用户的环境变量..................................................................................10

3.5. 设置 ssh 信任关系................................................................................................................11

3.5.1. 设置 rsa 和 dsa 加密...........................................................................................11

3.5.2. 编辑 authorized_keys 文件............................................................................. 12

3.5.3. 在 rac2 中也进行【3.6.1 设置 rsa 和 dsa 加密】操作.................................12

3.5.4. 传输 authorized_keys 文件............................................................................. 12

3.5.5. 在 rac2 中也进行【3.6.2.编辑 authorized_keys 文件】操作...................12

3.5.6. 传输 authorized_keys 文件............................................................................. 12

3.5.7. 查看 authorized_keys 文件............................................................................. 13

3.5.8. 测试信赖关系........................................................................................................13

3.6. 创建、配置共享存储(udev)........................................................................................... 14

  1. 软件安装(只在 rac1 上安装)....................................................................................................17

4.1. 安装介质解压.......................................................................................................................17

4.1.1. 解压 grid...............................................................................................................17

4.1.2. 解压 Oracle..........................................................................................................18

4.1.3. 修改 cvu_config..................................................................................................18

4.2. 安装 GI..................................................................................................................................18

4.2.1. 安装 cvuqdisk..................................................................................................... 18

4.2.2. 安装过程需要的包................................................................................................19

4.2.3. 运行安装脚本 gridSetup.sh..............................................................................20

麒麟软件有限公司

4.2.4. 验证集群................................................................................................................34

4.3. ASM 配置............................................................................................................................... 35

1、 高度冗余(high redundancy):.......................................................................36

2、 默认冗余(normal redundancy):..................................................................36

3、 外部冗余(external redundancy):............................................................... 36

4.4. 安装 ORACLE.......................................................................................................................36

4.5. 创建数据库...........................................................................................................................43

  1. 验证及使用.......................................................................................................................................51

5.1. 验证集群、数据库...............................................................................................................51

5.1.1. 验证集群是否正常................................................................................................51

5.1.2. 检查集群运行状态................................................................................................51

5.1.3. 查看 PDB...............................................................................................................52

5.1.4. 查看监听状态........................................................................................................52

5.1.5. 查看节点的应用程序............................................................................................53

5.1.6. 查看 ASM 状态..................................................................................................... 54

5.2. 数据库的关闭与启动...........................................................................................................54

5.2.1. 关闭数据库............................................................................................................54

5.2.2. 开启数据库............................................................................................................54

5.3. 数据库使用...........................................................................................................................54

  1. 相关报错及处理方法.......................................................................................................................56

6.1. 运行./gridSetup.sh 或者安装 Oracle 报错 requires X display 弹不出窗口.........................56

6.2. 报错 PRVG-0282..................................................................................................................57

麒麟软件有限公司

6.3. 报错 INS-06003 INS-06006.................................................................................................58

6.4. 报错 CRS-1705.....................................................................................................................59

麒麟软件有限公司

Oracle19c-19.3.0.0 RAC 安装

1. 说明

RAC 集群是由若干物理机组成,每个物理机为一个节点,节点之间通过公 共网络和私有网络连接,其中私有网络的功能是实现节点之间的通信,而公共网 络的功能是提供用户的访问。

在每个节点上分别运行一个 Oracle 数据库实例和一个监听器。

这些实例通过 CRS(CRS 通过一系列的进程和服务来保证集群的运行,提 供高可用性)的协助,共同操作一个数据库,是一个典型的"多实例,单数据库"架构,数据库被所有节点共享、并行访问。共享存储是 RAC 架构的核心。数据 库的数据文件、控制文件、参数文件、重做日志文件等等都要放到共享存储上,各节点可以对这些文件进行并行访问。如果其中某个节点发生故障,RAC 能够 将连接自动切换到另外一个节点上,无单点故障问题,从而实现应用的无缝切换。

监听器分别监听一个 IP 地址上的用户请求,这个地址称为 VIP(Virtual IP)。用户可以向任何一个 VIP 所在的数据库服务器发出请求,通过任何一个数据库实 例访问数据库。Clusterware 负责监视每个节点的状态,如果发现某个节点出 现故障,便把这个节点上的数据库实例和它所对应的 VIP 以及其他资源切换到另 外一个节点上,这样可以保证用户仍然可通过这个 VIP 访问数据库。

麒麟软件有限公司

2. 软件下载

https://www.oracle.com/database/technologies/oracle19c-linux-d

++++ownloads.html++++

LINUX.X64_193000_db_home.zip 数据库文件

LINUX.X64_193000_grid_home.zip grid 文件

软件包只需传至节点 1 机器。

注:

OCR:oracle集群注册表:存储集群配置,包含所有RAC集群节点的信息。

Voting文件:表决文件:集群出现脑裂时,决定哪个节点获得控制盘。

3. 准备工作

3.1. 机器规划

麒麟软件有限公司

以两节点 RAC 为例,两台虚机参考配置内存 8G、CPU 4 核、用于存储数 据的磁盘 100G,至少 2 个网卡,且网卡名称一致,两张网卡配置 IP 分别为 Public IP 地址、Private IP 地址,VIP 地址、SCAN IP 地址不需要配置在网卡上。

两台虚机分别作为 RAC 节点 1、节点 2,参考 IP 规划如下:

|-------------------|-----------------|-----------------|
| 主机名 | rac1 | rac2 |
| Public IP 地址 | 10.66.62.177 | 10.66.62.180 |
| VIP 地址 | 10.66.62.181 | 10.66.62.183 |
| Private IP 地址 | 200.200.200.201 | 200.200.200.202 |
| SCAN IP 地址 | 10.66.62.176 ||

Public IP 地址为集群成员节点的主地址,真实 IP;
VIP 地址供客户端访问使用,在其节点机器发生故障的时候会自动漂移到另 外正常的节点机器上;
PrivateIP 地址供集群节点内互连访问,用于心跳同步;
SCAN IP 地址相当于集群主机虚拟 IP,是客户端访问数据库时的公共域名; SCAN IP、VIP 和 Public IP 必须属于同一子网,Private IP 属于另一子网。

注:安装前快照虚机,避免安装出现问题无法还原干净环境。

注:

在麒麟虚拟机上增加心跳地址:

  1. 在物理机上给以太网口插网线,配IP地址:200.200.200.200,子网掩码:255.255.255.0
  2. 在VMware->编辑->虚拟网络编辑器->添加网络->VMnet2->桥接模式、已桥接至:Intel(R) I350千兆网络连接
  3. 在麒麟虚拟机中->开始->控制面板->网络连接->(左下)添加一个新的连接->以太网->新建->连接名称:ens36、设备:ens36->IPv4设置->方法:手动->添加->地址:200.200.200.201、子网掩码:255.255.255.0->保存
  4. ping 200.200.200.200
  5. 在第二台虚拟机上同样操作,配置IP地址200.200.200.202

3.2. 配置 IP 等相关服务(两节点都需要配置)3.2.1.配置主机名
在/etc/hostname 中修改,重启生效。

rac1 rac1
rac2 rac2

注:修改主机名:

vim /etc/hostname

A机:rac1

B机:rac2

生效:

systemctl restart NetworkManager

麒麟软件有限公司

3.2.2.配置 IP

添加网络适配器,为桥接模式,即节点为双网卡。

注:两边网卡名称必须一致,例如ens3 ens9
rac1:
ens3 为 public ip :10.10.16.172

ens9 为 private ip :10.0.17.172
rac2:
ens3 为 public ip :10.10.16.173

ens9 为 private ip :10.0.17.173

3.2.3.开启 SSH 服务

|--------------------------|
| vim /etc/ssh/sshd_config |

修改
PermitRootLogin yes //默认
PasswordAuthentication yes

|----------------------------------|
| systemctl restart sshd 重启 ssh 服务 |

3.2.4.添加 IP 信息

在/etc/hosts 中添加(节点 1、节点 2 配置同):

|-----------------|------|---|-----------|
| 10.66.62.177 | rac1 | rac1 ||
| 200.200.200.201 | rac1-priv || rac1-priv |

|-------------------------------------------------------------|----------|---|-----------|----------|
| | | rac2 || 麒麟软件有限公司 |
| 10.66.62.180 | rac2 | rac2 || |
| 200.200.200.202 |-------------------| | 200.200.200.20223 | | rac2-priv || rac2-priv | |
| 10.66.62.181 | rac1-vip | rac1-vip || |
| 10.66.62.182 |------------| | 10.10.16.2 | | rac2-vip | rac2-vip || |
| 10.66.62.176 |------------| | 10.10.16.3 | | rac-scan | rac-scan || |

注:publicvipscanip 要在同一网端,vipscanip 为未被占用的ip 即可,publicprivate 必须在不同子网段。

3.2.5.关闭时间服务

|-----------------------------------------------------------------------------------------|
| systemctl stop ntpd //默认 systemctl disable ntpd //默认 mv /etc/ntp.conf /etc/ntp.conf_bak |

关闭 chronyd,移除 chrony 配置文件,否则校验 NTP 失败。

|-------------------------------------------------------------------------------------------|
| systemctl stop chronyd systemctl disable chronyd mv /etc/chrony.conf /etc/chrony.conf.bak |

注:chronyd:优化的时间同步服务。

3.2.6.关闭防火墙

|------------------------------------------------------|
| systemctl stop firewalld systemctl disable firewalld |

|------------------------------------------------------------|----------|
| | 麒麟软件有限公司 |

|----------------------------|
| systemctl status firewalld |

3.2.7.关闭 SELINUX

注:安全增强型LINUX:对系统进行安全检查。

|-------------------------|
| vim /etc/selinux/config |

修改成 SELINUX=disabled

3.3. 检查所需安装包(两节点都需要)

创建YUM源:

  1. 加载麒麟安装光盘到/media

mount /dev/sr0 /media

  1. 配置YUM源:

cd /etc/yum.repos.d

mv kylin_x86_64.repo kylin_x86_64.repo20231226

vim /etc/yum.repos.d/media.repo

media

name=media

baseurl=file:///media

gpgcheck=0

enable=1

  1. 创建YUM源:

cd /var/ftp

mkdir yum

cd yum

cp -rf /media/Packages .

cd Packages

createrepo --database .

  1. 查看YUM源:

yum list

yum grouplist

需要确认下列包(在安装 Oracle 时会详细提示缺少哪个包的)已安装。

|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| yum install binutils gcc gcc-c++ glibc glibc-devel glibc32 ksh libstdc++-devel libaio libaio-devel libXext libXtst libX11 libXau libxcb libXi make sysstat unixODBC unixODBC-devel zlib-devel elfutils-libelf elfutils-libelf-devel glibc-headers glibc-common kernel-headers libgcc libgomp libstdc++ numactl-devel sysstat libXau libdmx xorg-x11-utils xorg-x11-xauth libXv libXt libXmu libXxf86misc libXxf86dga libXxf86vm nfs-utils smartmontools libnsl2-devel libnsl --y |

注:分开装,例如:yum install --y gcc

glibc32见E:\Softwares\oracle\LINUX.X64_193000_db_home\rpm\ glibc32-2.28-42.1.ky10.x86_64.rpm

rpm --ivh glibc32-2.28-42.1.ky10.x86_64.rpm --nodeps --force

nodeps:不检查依赖关系

force:强制安装

需要手动下载 com

pat-libstdc++-33 的 rpm 进行安装

|------------------------------------------------------------------------------------------------------------------------------------------------------------|
| wget http://mirror.centos.org/centos/7/os/x86_64/Packages/compat-libstdc++-33-3.2.3-72.el7.x86_64.rpm rpm -ivh compat-libstdc++-33-3.2.3-72.el7.x86_64.rpm |

麒麟软件有限公司

3.4. 修改参数(两节点都需要修改)

3.4.1.修改/etc/sysctl.conf 配置文件

|----------------------|
| vim /etc/sysctl.conf |

添加如下:

##============Oracle19c===============

fs.file-max = 6815744 //系统能打开的最大文件数
kernel.sem = 250 32000 100 128 //最大信号量
kernel.shmmni = 4096 //最大共享内存
kernel.shmall = 1073741824 //最大共享内存的段数
kernel.shmmax = 4398046511104 //共享内存的最大值
kernel.panic_on_oops = 1 //在oops执行结束前,是否执行panic
net.core.rmem_default = 262144 //内核套接字读缓存区的默认大小
net.core.rmem_max = 4194304 //内核套接字读缓存区的最大值
net.core.wmem_default = 262144 //内核套接字写缓存区的默认大小
net.core.wmem_max = 1048576 //内核套接字写缓存区的最大值
net.ipv4.conf.all.rp_filter = 2 //要求反向路由必须可达,否则丢弃数据包

net.ipv4.conf.default.rp_filter = 2 //同上一条
fs.aio-max-nr = 1048576 //同时拥有异步I/O请求的数目
net.ipv4.ip_local_port_range = 9000 65500 //一个IP可用的端口范围

然后执行:

|------------|
| sysctl --p |

3.4.2.修改/etc/security/limits.conf 配置文件

|-------------------------------|
| vim /etc/security/limits.conf |

添加如下:

##============Oracle19c===============

oracle soft nproc 2047 //单用户可用的最大连接数(超出则警告)

麒麟软件有限公司

oracle hard nproc 16384 //单用户可用的最大连接数(超出则报错)

oracle soft nofile 1024 //可打开文件的最大数(超出则警告)
oracle hard nofile 65536 //可打开文件的最大数(超出则报错)

oracle soft stack 10240 //用户进程的堆栈大小(超出则警告、以K为单位)

oracle hard stack 32768 //用户进程的堆栈大小(超出则报错、以K为单位)

oracle soft memlock 3145728 //用户可以锁定其地址空间的内存量(超出则警告、以K为单位)
oracle hard memlock 3145728//用户可以锁定其地址空间的内存量(超出则报错、以K为单位)
grid soft nproc 2047
grid hard nproc 16384
grid soft nofile 1024
grid hard nofile 65536

|-------------------|------|-------|-------|
| Grid | soft | stack | 10240 |
| |------| | Grid | | hard | stack | 32768 |

3.4.3.修改/etc/pam.d/login 配置文件

|----------------------|
| vim /etc/pam.d/login |

添加如下:

##============Oracle19c===============

session required pam_limits.so

3.4.4.修改/etc/profile 配置文件:

|------------------|
| vim /etc/profile |

添加如下:

##============Oracle19c=============== if [ USER = "oracle" \] \|\| \[ USER = "grid" ]; then

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

|-----------------|
| ulimit -p 16384 |

|-----------------|
| ulimit -n 65536 |

|------|
| else |

|--------------------------|
| ulimit -u 16384 -n 65536 |

|----|
| fi |

|----|
| fi |

注:

p:管道缓冲区

n:每个进程可打开的文件数

u:最大用户进程数

3.4.5.配置 NOZEROCONF

|----------------------------|
| vim /etc/sysconfig/network |

麒麟软件有限公司

添加 NOZEROCONF=yes

3.4.6.添加用户及组

|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| groupadd -g 11001 oinstall groupadd -g 11002 dba groupadd -g 11003 oper groupadd -g 11004 backupdba groupadd -g 11005 dgdba groupadd -g 11006 kmdba groupadd -g 11007 asmdba groupadd -g 11008 asmoper groupadd -g 11009 asmadmin groupadd -g 11010 racdba useradd -u 11021 -g oinstall -G dba,asmdba,backupdba,dgdba,kmdba,racdba,oper oracle useradd -u 11022 -g oinstall -G asmadmin,asmdba,asmoper,dba grid passwd grid passwd oracle |

3.4.7.创建需要的目录

|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| mkdir -p /u01/app/19.3.0/grid mkdir -p /u01/app/grid mkdir -p /u01/app/oracle mkdir -p /u01/app/oracle/product/19.3.0/db_1 chown -R grid:oinstall /u01/app/grid chown -R grid:oinstall /u01/app/19.3.0/grid |

|------------------------------------------------------------|----------|
| | 麒麟软件有限公司 |

|--------------------------------------------------------------------------------|
| chown -R oracle:oinstall /u01/app/oracle chmod -R 775 /u01/ chmod 777 /u01/app |

3.4.8.配置 oracle 用户的环境变量

在~oracle/.bash_profile 配置文件中添加:

##============Oracle19c===============

|------------------------------------|
| ORACLE_SID=orcl1;export ORACLE_SID |

ORACLE_UNQNAME=cndba;export ORACLE_UNQNAME JAVA_HOME=/usr/local/java; export JAVA_HOME
ORACLE_BASE=/u01/app/oracle; export ORACLE_BASE

|-----------------------------------------------|--------|
| ORACLE_HOME=$ORACLE_BASE/product/19.3.0/db_1; | export |

ORACLE_HOME
ORACLE_TERM=xterm; export ORACLE_TERM

|-----------------------------------------|--------|
| NLS_DATE_FORMAT="YYYY:MM:DDHH24:MI:SS"; | export |

NLS_DATE_FORMAT
NLS_LANG=american_america.ZHS16GBK; export NLS_LANG

|---------------------------------------|--------|
| TNS_ADMIN=$ORACLE_HOME/network/admin; | export |

TNS_ADMIN
ORA_NLS11=ORACLE_HOME/nls/data; export ORA_NLS11 PATH=.:{JAVA_HOME}/bin:{PATH}:HOME/bin:ORACLE_HOM E/bin:ORA_CRS_HOME/bin
PATH={PATH}:/usr/bin:/bin:/usr/bin/X11:/usr/local/bin export PATH LD_LIBRARY_PATH=ORACLE_HOME/lib
LD_LIBRARY_PATH={LD_LIBRARY_PATH}:ORACLE_HOME/orac m/lib
LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:/lib:/usr/lib:/usr/local/li

|---|
| b |

export LD_LIBRARY_PATH
CLASSPATH=ORACLE_HOME/JRE CLASSPATH={CLASSPATH}:ORACLE_HOME/jlib CLASSPATH={CLASSPATH}:ORACLE_HOME/rdbms/jlib CLASSPATH={CLASSPATH}:$ORACLE_HOME/network/jlib export CLASSPATH
THREADS_FLAG=native; export THREADS_FLAG
export TEMP=/tmp
export TMPDIR=/tmp
umask 022

麒麟软件有限公司

注:节点2 ORACLE_SID=orcl2,该实例名应与后续数据库安装中的实例名一致

|-------------------------------|
| source ~oracle/.bash_profile |

3.4.9.配置 grid 用户的环境变量

在~grid/.bash_profile 配置文件中添加:

##============Oracle19c=============== PATH=PATH:HOME/bin

|-------------------------|
| 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:/usr/local/bin/:.

export TEMP=/tmp
export TMP=/tmp
export TMPDIR=/tmp
umask 022
export PATH
注:节点2 ORACLE_SID=+ASM2

|-----------------------------|
| source ~grid/.bash_profile |

|----------|-------------|
| 3.5. | 设置 ssh 信任关系 |

注:用户gridoracle 都需要进行此操作,以下以grid 用户为例。

3.5.1.设置 rsa 和 dsa 加密

注:"Enter passphrase :" 不要输入密码 ,直接enter 。 否则安装GI 时无法通

SSH Cconnectivity 测试。

|-----------------------------------------------------------------------------------------------------------------------------------------------------|
| 注:做完密码验证后ssh、scp不需要密码。 [root@rac1 ~]# su - grid [grid@rac1 ~] ssh-keygen -t rsa //生成对称加密的密钥 \[grid@rac1 \~\] ssh-keygen -t dsa //生成非对称加密的密钥 |
| |

|-----------------------------------------------------------------------------------------------------------------------|----------|
| | 麒麟软件有限公司 |

3.5.2.编辑 authorized_keys 文件
把 rsa 和 dsa 加密都放置到 authorized_keys 文件中:

|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| [grid@rac1 ~] cd \~ \[grid@rac1 \~\] cat .ssh/id_rsa.pub >> .ssh/authorized_keys //对称加密的密钥 [grid@rac1 ~]$ cat .ssh/id_dsa.pub >> .ssh/authorized_keys //非对称加密的密钥 |

3.5.3.在 rac2 中也进行【3.6.1 设置 rsa 和 dsa 加密】操作

|----------------------------------------------------------------------------------------------------------------------------------------------------------------|
| [root@rac2 ~]# su - grid [grid@rac2 ~] ssh-keygen -t rsa \[grid@rac2 \~\] ssh-keygen -t dsa |

3.5.4.传输 authorized_keys 文件
把 rac1 的 authorized_keys 拷贝到 rac2 中:

|-----------------------------------------------------------------------------------------------------|
| [grid@rac1 ~] cd \~/.ssh/ \[grid@rac1 .ssh\] scp authorized_keys 10.10.16.173:/home/grid/.ssh/ |

麒麟软件有限公司

3.5.5.在 rac2 中也进行【3.6.2.编辑 authorized_keys 文件】操作

|---------------------------------------------------------------------------------------------------------------------------------------------------------|
| [grid@rac2 ~] cd \~ \[grid@rac2 \~\] cat .ssh/id_rsa.pub >> .ssh/authorized_keys [grid@rac2 ~]$ cat .ssh/id_dsa.pub >> .ssh/authorized_keys |

3.5.6.传输 authorized_keys 文件

把 rac2 的 authorized_keys 拷贝到 rac1 中:

|-----------------------------------------------------------------------------------------------------|
| [grid@rac2 ~] cd \~/.ssh/ \[grid@rac2 .ssh\] scp authorized_keys 10.10.16.172:/home/grid/.ssh/ |

3.5.7.查看 authorized_keys 文件

查看一下 rac1 和 rac2 的 authorized_keys 文件,确认 rac1 与 rac2 内

容一致。

3.5.8.测试信赖关系

rac1 和 rac2 分别测试,可以正常返回日期即可:

|--------------------------------------------------------------------------------------------------|
| [grid@rac1~]ssh rac1 date \[grid@rac1\~\]ssh rac2 date [grid@rac1 ~]$ ssh rac1-priv date |

|------------------------------------------------------------|----------|
| | 麒麟软件有限公司 |

|--------------------------------------------------------------|
| [grid@rac1 ~]$ ssh rac2-priv date 注:不能正常执行,则ifconfig查看地址。 |

|----------|-----------------|
| 3.6. | 创建、配置共享存储(udev) |

实现共享存储有多种方式,VM 虚修改 vmk 文件使用 udev 或者使用 ISCSI

等方式实现,kvm 虚机可以创建 raw 格式的磁盘使用 udev 进行共享。

需要 OCR 表决磁盘组以及 ASM 数据文件存储磁盘组,可以根据需要选择

不同的冗余模式,创建不同数量的磁盘。

注:redundancy---冗余三种模式,high、normal、external 分别代表高、正常、外部。

一般各模式需要的磁盘数量为: high:最少 5 块;normal:最少 3 块;external:最少 1 块。

1、 高度冗余(high redundancy):
表示 Oracle 提供 3 份镜像来保护数据(镜像数据两次),以提高性能和数据的安全,所创建的磁盘组 空间大小是所有磁盘设备大小之和的 1/3,虽然冗余级别高了,但是硬件的代价也最高。

2、 默认冗余(normal redundancy):

麒麟软件有限公司 表示 Oracle 提供 2 份镜像来保护数据(镜像数据一次),所创建的磁盘组空间大小是所有磁盘设备大 小之和的 1/2 (虽然网上说使用最多,但是这要看实际生产设备存储情况来判断)。

3、 外部冗余(external redundancy):
表示 Oracle 没有做磁盘冗余,所创建的磁盘组空间大小是所有选择的所有磁盘的大小之和。虽然磁 盘利用充分,但是磁盘出错后无法恢复数据,只能依赖外部存储系统实现,比如通过 RAID 技术。

本处 OCR 盘采用 normal 冗余,数据文件盘采用 external 冗余,故需要3 块 20G 且没有挂载的 SATA 可共享磁盘作为 OCR,1 块 50G 且没有挂载的SATA 可共享磁盘作为数据文件存储。

在VMvare虚拟机上添加共享存储20240110:

1.第一台虚拟机->编辑虚拟机设置->添加->硬盘->下一步->SCSI(S)->下一步->创建新虚拟磁盘->下一步->最大磁盘大小:20G、勾选立即分配所有硬盘空间、将虚拟磁盘存储为单个文件->确定磁盘文件名->确定

2.选中新添加的硬盘->高级->虚拟设备结点:SCISI 1:1开始往下用、勾选独立-永久->确定

3.第二台虚拟机->编辑虚拟机设置->添加->硬盘->下一步->SCSI(S)->下一步->使用现有虚拟磁盘->下一步->打开步骤1创建的虚拟磁盘->确定

4.选中新添加的硬盘->高级->虚拟设备结点:SCISI 1:1开始往下用、勾选独立-永久->确定

5.打开两个虚拟机的安装目录,在vmx文件最后添加(scsi1指定总线为1的所有盘):

disk.locking="FALSE"

scsi1.SharedBus="Virtual"

scsi1.shared="TRUE"

在麒麟虚拟机上为oracle19c RAC建立裸设备:

查看硬盘

root@ora19cRAC1 \~\]$ lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sda 8:0 0 200G 0 disk ├─sda1 8:1 0 1G 0 part /boot └─sda2 8:2 0 199G 0 part ├─klas-root 253:0 0 147.4G 0 lvm / ├─klas-swap 253:1 0 1.6G 0 lvm \[SWAP

└─klas-backup 253:2 0 50G 0 lvm

sdb 8:16 0 20G 0 disk

sdc 8:32 0 20G 0 disk

sdd 8:48 0 20G 0 disk

sde 8:64 0 200G 0 disk

sr0 11:0 1 4G 0 rom

看硬盘的UUID:

root@ora19cRAC1 \~\]# udevadm info -q all -n /dev/sdb\|grep 'S: disk/by-id/scsi' S: disk/by-id/scsi-36000c2907a14b426ac2307aa536889dd \[root@ora19cRAC1 \~\]# udevadm info -q all -n /dev/sdc\|grep 'S: disk/by-id/scsi' S: disk/by-id/scsi-36000c29f880b9b5a8899a81cce6d79ad \[root@ora19cRAC1 \~\]# udevadm info -q all -n /dev/sdd\|grep 'S: disk/by-id/scsi' S: disk/by-id/scsi-36000c298debf5520a0d21556fa1457aa \[root@ora19cRAC1 \~\]# udevadm info -q all -n /dev/sde\|grep 'S: disk/by-id/scsi' S: disk/by-id/scsi-36000c29c459d3efdc77f5616058037c8 新建规则文件: vim /etc/udev/rules.d/99-oracle-asmdevices.rules 添加: KERNEL=="sd\*", ENV{DEVTYPE}=="disk", SUBSYSTEM=="block", PROGRAM=="/usr/lib/udev/scsi_id -g -u -d $devnode", RESULT=="36000c2907a14b426ac2307aa536889dd", RUN+="/bin/sh -c 'mknod /dev/asm-ocr1 b $major $minor; chown grid:asmadmin /dev/asm-ocr1; chmod 0660 /dev/asm-ocr1'" KERNEL=="sd\*", ENV{DEVTYPE}=="disk", SUBSYSTEM=="block", PROGRAM=="/usr/lib/udev/scsi_id -g -u -d $devnode", RESULT=="36000c29f880b9b5a8899a81cce6d79ad", RUN+="/bin/sh -c 'mknod /dev/asm-ocr2 b $major $minor; chown grid:asmadmin /dev/asm-ocr2; chmod 0660 /dev/asm-ocr2'" KERNEL=="sd\*", ENV{DEVTYPE}=="disk", SUBSYSTEM=="block", PROGRAM=="/usr/lib/udev/scsi_id -g -u -d $devnode", RESULT=="36000c298debf5520a0d21556fa1457aa", RUN+="/bin/sh -c 'mknod /dev/asm-ocr3 b $major $minor; chown grid:asmadmin /dev/asm-ocr3; chmod 0660 /dev/asm-ocr3'" KERNEL=="sd\*", ENV{DEVTYPE}=="disk", SUBSYSTEM=="block", PROGRAM=="/usr/lib/udev/scsi_id -g -u -d $devnode", RESULT=="36000c29c459d3efdc77f5616058037c8", RUN+="/bin/sh -c 'mknod /dev/asm-ocr4 b $major $minor; chown grid:asmadmin /dev/asm-ocr4; chmod 0660 /dev/asm-ocr4'" udevadm control --reload-rules udevadm trigger --type=devices --action=change 注:udev命令建立裸设备并改磁盘属组(磁盘属组必须是asmadmin,否则oracle19c RAC无法安装)。 查看asm设备: \[root@ora19cRAC1 \~\]# ll /dev/asm\* brw-rw---- 1 grid asmadmin 8, 16 1月 9 19:14 /dev/asm-ocr1 brw-rw---- 1 grid asmadmin 8, 32 1月 9 19:14 /dev/asm-ocr2 brw-rw---- 1 grid asmadmin 8, 48 1月 9 19:14 /dev/asm-ocr3 brw-rw---- 1 grid asmadmin 8, 64 1月 9 19:14 /dev/asm-ocr4 **4.** 软件安装(只在**rac1** 上安装) **4.1.** 安装介质解压 从 Oracle 12cR2 开 始 , 软 件 直 接 解 压 缩 到 GRID_HOME 或 者 ORACLE_HOME,而不是在安装时脚本复制过去。 该操作只需要在 rac1 上完 成解压缩即可。 4.1.1.解压 grid ![](https://img-home.csdnimg.cn/images/20230724024159.png) 麒麟软件有限公司 用 grid 用户来解压缩 GI 注:B机不需要解压缩,且此目录必须为空。 |--------------------------------------------------| | \[grid@rac1 u01\]$ unzip -d /u01/app/19.3.0/grid | | LINUX.X64_193000_grid_home.zip | 4.1.2.解压 Oracle 与 grid 操作相同,用 oracle 用户解压缩到 ORACLE_HOME |---------------------------------------------------------------------------| | unzip -d /u01/app/oracle/product/19.3.0/db_1 LINUX.X64_193000_db_home.zip | ![](https://img-home.csdnimg.cn/images/20230724024159.png) 4.1.3.修改 cvu_config grid 安装目录/u01/app/19.3.0/grid 下,编辑 cv/admin/cvu_config,添加一行 CV_ASSUME_DISTID=KYV10,否则安装会报错 PRVG-0282。 Oracle 用户同。 ![](https://img-home.csdnimg.cn/images/20230724024159.png) **4.2.** 安装 GI 4.2.1.安装 cvuqdisk /cvu:集群检测安装工具 cvuqdisk 存于 GI 解压目录下的 cv/rpm 目录下: |------------------------------------------------------------|----------| | ![](https://img-home.csdnimg.cn/images/20230724024159.png) | 麒麟软件有限公司 | |---------------------------------------------------------------| | cd /u01/app/19.3.0/grid/cv/rpm rpm -ivh cvuqdisk-1.0.10-1.rpm | ![](https://img-home.csdnimg.cn/images/20230724024159.png) cvuqdisk 传至 rac2,两个节点都需安装。 4.2.2.安装过程需要的包 4.2.2.1. /usr/bin/ld: 找不到 -lclntshcore 缺少 libclntshcore,在 Oracle 软件解压目录下拷至 grid 目录即可。 |--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | cp /u01/app/oracle/product/19.3.0/db_1/lib/libclntshcore.so.19.1 /u01/app/19.3.0/grid/lib/ chown -R grid:oinstall /u01/app/19.3.0/grid/lib/libclntshcore.so.19.1 cp /u01/app/19.3.0/grid/lib/libclntshcore.so.19.1 /usr/lib64/ | scp 至节点 2 的/usr/lib64/。 4.2.2.2. /usr/bin/ld: 找不到 /usr/lib64/libpthread_nonshared.a 安装了 glibc32 后,拷至/usr/lib64/。 |--------------------------------------------------------------------------------------------------------------------------------| | find / -name libpthread_nonshared.a cp /usr/lib/libpthread_nonshared.a /usr/lib64/ chmod 777 /usr/lib64/libpthread_nonshared.a | ![](https://img-home.csdnimg.cn/images/20230724024159.png) ![](https://img-home.csdnimg.cn/images/20230724024159.png) 麒麟软件有限公司 节点 2 操作同。 4.2.3.运行安装脚本 gridSetup.sh 在 rac1 窗口,root 用户下执行。 |---------| | xhost + | 返回信息为 access control disabled,clients can connect from any host。 在10.66.62.178上运行Xmanager-Passive。 切换到 gird 用户。 |------------------------------------------------------| | su - grid export DISPLAY=:0 cd /u01/app/19.3.0/grid/ | 在双机上先打6个rpm包:E:\\Softwares\\oracle\\LINUX.X64_193000_db_home\\rpm   再:yum install libnsl 安装前检查环境。 /同先决条件检查。 |------------------------------------------------------------------------------------------------------------------------------------------------------------| | \[grid@rac1 grid\]$ ./runcluvfy.sh stage -pre crsinst -n rac1,rac2-fixup -verbose \[grid@rac1 grid\]$ ./runcluvfy.sh stage -post hwos -n rac1,rac2-verbose | 遇到问题或者报错进行相应的排查,无问题则执行 GI 安装脚本。 处理scp文件(需要两台机器都做): rpm --q openssh //查看openssh的版本号 su cd /usr/bin mv scp scp .orig vi scp 写入: /usr/bin/scp.orig --T $\* chmod 555 scp 安装完成后再改回来。 出现swap交换空间不足的处理: 使用dd命令创建一个swap分区(双机都做): 1. dd if=/dev/zero of=/home/swap bs=1024 count=17400000 dd:指定大小的块拷贝文件,并在拷贝的同时进行指定的转换。 /dev/zero:空输入设备,用于初始化文件。 bs:一块的字节数 count:输入的块数(17.4G) 2.格式化创建的分区: mkswap /home/swap mkswap:设置交换区 3.把分区设置为swap分区: swapon /home/swap swapon:启用交换分区 4.查看swap分区: free --m 5.修改/etc/fstab文件,自动挂载swap分区: vim /etc/fstab 增加: /home/swap swap swap default 0 0 6.修改运行时配置文件: echo "swapon /home/wap" \>\> /etc/inittab |---------------------------------------------------------------------| | cd vi .bash_profile 增加: export LC_ALL=C  //否则安装界面有乱码 ./gridSetup.sh | ![](https://img-home.csdnimg.cn/images/20230724024159.png) 弹出窗口,进行安装,点击下一步。 ![](https://img-home.csdnimg.cn/images/20230724024159.png) 麒麟软件有限公司 ![](https://img-home.csdnimg.cn/images/20230724024159.png) SCAN 名称与/etc/hosts 文件中配置一致。 ![](https://img-home.csdnimg.cn/images/20230724024159.png) ![](https://img-home.csdnimg.cn/images/20230724024159.png) 麒麟软件有限公司 点击添加,添加缺少的节点。 //同/etc/hosts文件 ![](https://img-home.csdnimg.cn/images/20230724024159.png) ![](https://img-home.csdnimg.cn/images/20230724024159.png) 麒麟软件有限公司 添加完节点后,点击 ssh 连接,远程链接各节点,输入 grid 的密码,点击 测试。 如果测试不通过,根据报错进行排查,检查 ssh 互信;测试通过则下一步。 注意,若手动 ssh 互信能通过,但是窗口安装测试不通过,例如 INS-06003 INS-06006,考虑是 OpenSSH 8.0 增加了客户端检查导致两个节点没能正确传输文件。 ![](https://img-home.csdnimg.cn/images/20230724024159.png) 麒麟软件有限公司 ![](https://img-home.csdnimg.cn/images/20230724024159.png) ![](https://img-home.csdnimg.cn/images/20230724024159.png) 麒麟软件有限公司 ![](https://img-home.csdnimg.cn/images/20230724024159.png) ![](https://img-home.csdnimg.cn/images/20230724024159.png) ![](https://img-home.csdnimg.cn/images/20230724024159.png) 麒麟软件有限公司 修改磁盘组名称为 OCR,点击更改搜索路径,修改成/dev/asm\*,点击确 定,勾选 3-5 块大小相同的 ASM 磁盘用作 OCR,本例中勾选 c d e 三块盘。 ![](https://img-home.csdnimg.cn/images/20230724024159.png) 麒麟软件有限公司 ![](https://img-home.csdnimg.cn/images/20230724024159.png) ![](https://img-home.csdnimg.cn/images/20230724024159.png) 麒麟软件有限公司 ![](https://img-home.csdnimg.cn/images/20230724024159.png) ![](https://img-home.csdnimg.cn/images/20230724024159.png) 麒麟软件有限公司 ![](https://img-home.csdnimg.cn/images/20230724024159.png) 注:上面两个目录必须为空,也不能有隐藏文件。 ![](https://img-home.csdnimg.cn/images/20230724024159.png) ![](https://img-home.csdnimg.cn/images/20230724024159.png) 麒麟软件有限公司 等待先决条件检查,根据检查问题进行相应的处理和修复,swap 空间、DNS 问题可以忽略,如果是正产环境,建议认真对待,勾选全部忽略点击下一步确定。 ![](https://img-home.csdnimg.cn/images/20230724024159.png) 麒麟软件有限公司 ![](https://img-home.csdnimg.cn/images/20230724024159.png) 交换空间的处理参考oracle 19c单实例的安装。下一步,等待安装,如果过程遇到报错,查看具体日志,进行相应的解决,直到弹出执行配置脚本。 按照提示先 root 用户在节点 1 上执行提示的两个脚本,再在节点 2 上执行。 ![](https://img-home.csdnimg.cn/images/20230724024159.png) |------------------------------------------------------------|----------| | ![](https://img-home.csdnimg.cn/images/20230724024159.png) | 麒麟软件有限公司 | |--------------------------------------| | /u01/app/oraInventory/orainstRoot.sh | ![](https://img-home.csdnimg.cn/images/20230724024159.png) |---------------------------------| | /u01/app/19.3.0/grid/root.sh 回车 | 节点 2 运行。 如果节点 2 运行 root.sh 有报错 Relinking rac_on failed 就退出了,检查 |---|---|---|---|---|-------------|---|---|---|---|-----------------------| | 节 | 点 | 2 | 是 | 否 | /usr/lib64/ | 下 | 缺 | 少 | 了 | libclntshcore.so.19.1 | libpthread_nonshared.a,拷完再执行 root.sh 脚本。 ![](https://img-home.csdnimg.cn/images/20230724024159.png) ![](https://img-home.csdnimg.cn/images/20230724024159.png) 麒麟软件有限公司 如果节点 2 运行 root.sh 有报错文件权限问题,根据提示修改完权限再执 行 root.sh 脚本。 ![](https://img-home.csdnimg.cn/images/20230724024159.png) 参考配置: |----------------------------------------------------------------------------| | chown -R grid:oinstall /u01/app/grid/ chown -R root:root /u01/app/grid/tfa | 如果节点 2 有 CRS-1705 报错,多半是共享磁盘问题,检查共享磁盘配置。 直 到 节 点 2 上 出 现 " Configure Oracle Grid Infrastructure for a Cluster ... succeeded ",即为在两个节点上都执行完脚本,安装窗口点击确 定,继续等待。 出现错误 INS-20802,若 ping rac-scan 能 ping 通,此报错可忽略,点 击确认后,点击跳过,下一步。所有的INS-20802错误都可以忽略。 ![](https://img-home.csdnimg.cn/images/20230724024159.png) ![](https://img-home.csdnimg.cn/images/20230724024159.png) 麒麟软件有限公司 GI 安装成功。 4.2.4.验证集群 grid 用户下验证集群是否正常: |---------------------| | crsctl stat res --t | 停grid: su cd /u01/app/19.3.0/grid/bin crsctl stop crs //两台机器分别做 查看监听: srvctl status listener ![](https://img-home.csdnimg.cn/images/20230724024159.png) ![](https://img-home.csdnimg.cn/images/20230724024159.png) 麒麟软件有限公司 **4.3.** ASM 配置 节点1有一块用于存储的可共享的 raw格式磁盘,进行用于配置 ASM 共 享存储用于安装数据库实例,asmca 创建磁盘组(grid 用户下进行操作),创建 DATA 磁盘组用于存储数据文件。 |-------| | asmca | 选择 ASM 实例,查看是否是 2 个实例,且状态是启动。 点击磁盘组,右键选择新建,创建用于存放数据库实例相关的文件(如控制文件,参数文件,表空间数据文件)的磁盘组,在弹出框中修改磁盘簇名称,以及选择磁盘冗余度,本次选择是 Extenal,选择磁盘 f,点击确认。 ![](https://img-home.csdnimg.cn/images/20230724024159.png) ![](https://img-home.csdnimg.cn/images/20230724024159.png) 麒麟软件有限公司 PS:一般存储规划时将归档文件另外再创建磁盘组额外存放,热备文件也是如此。 等待创建成功。 **4.4.** 安装 ORACLE 与 grid 操作相同,切换到 Oracle 用户执行安装脚本。 oracle用户做ssh互信。oracle用户的.bash_profile中加入: export LC_ALL=C |-------------------------------------------------------------------------------------| | su - oracle export DISPLAY=:0 cd /u01/app/oracle/product/19.3.0/db_1 ./runInstaller | ![](https://img-home.csdnimg.cn/images/20230724024159.png) ![](https://img-home.csdnimg.cn/images/20230724024159.png) 麒麟软件有限公司 建议选择仅设置软件,方便后续如果有错误进行排查。 ![](https://img-home.csdnimg.cn/images/20230724024159.png) ![](https://img-home.csdnimg.cn/images/20230724024159.png) 麒麟软件有限公司 点击 ssh 连接,输入 Oracle 用户密码,点击测试,测试通过下一步。 ![](https://img-home.csdnimg.cn/images/20230724024159.png) 麒麟软件有限公司 ![](https://img-home.csdnimg.cn/images/20230724024159.png) ![](https://img-home.csdnimg.cn/images/20230724024159.png) 麒麟软件有限公司 ![](https://img-home.csdnimg.cn/images/20230724024159.png) 等待先决条件检查,根据检查问题进行相应的处理和修复,swap 空间以及 ![](https://img-home.csdnimg.cn/images/20230724024159.png) 麒麟软件有限公司 DNS 问题可忽略,勾选全部忽略,点击下一步确定。 ![](https://img-home.csdnimg.cn/images/20230724024159.png) ![](https://img-home.csdnimg.cn/images/20230724024159.png) ![](https://img-home.csdnimg.cn/images/20230724024159.png) 麒麟软件有限公司 等待安装,遇到问题查看日志进行相应的解决,直到弹出执行配置脚本。 按照提示先 root 用户在节点 1 上执行提示的脚本,再在节点 2 上执行。 |------------------------------------------------| | /u01/app/oracle/product/19.3.0/db_1/root.sh 回车 | 再在节点 2 执行。 ![](https://img-home.csdnimg.cn/images/20230724024159.png) ![](https://img-home.csdnimg.cn/images/20230724024159.png) 麒麟软件有限公司 回到窗口点击确定。 安装完成。 ASMCMD命令20240125 (取自10.66.62.177虚拟机) \[root@rac1 \~\]# su - grid \[grid@rac1 \~\]$ asmcmd 列出所有命令: ASMCMD\>help 列出所有磁盘组机器属性: ASMCMD\> lsdg State Type Rebal Sector Logical_Sector Block AU Total_MB Free_MB Req_mir_free_MB Usable_file_MB Offline_disks Voting_files Name MOUNTED EXTERN N 512 512 4096 4194304 204800 192372 0 192372 0 N DATA/ MOUNTED NORMAL N 512 512 4096 4194304 61440 60524 20480 20022 0 Y OCR/ 显示ASM文件占用的所有磁盘空间: ASMCMD\> du Used_MB Mirror_used_MB 12510 12692 **4.5.** 创建数据库 窗口用 oracle 用户执行 dbca 命令,创建实例。 |------------------------------------------------------------|----------| | ![](https://img-home.csdnimg.cn/images/20230724024159.png) | 麒麟软件有限公司 | |------| | dbca | ![](https://img-home.csdnimg.cn/images/20230724024159.png) ![](https://img-home.csdnimg.cn/images/20230724024159.png) 麒麟软件有限公司 ![](https://img-home.csdnimg.cn/images/20230724024159.png) ![](https://img-home.csdnimg.cn/images/20230724024159.png) 麒麟软件有限公司 ![](https://img-home.csdnimg.cn/images/20230724024159.png) ![](https://img-home.csdnimg.cn/images/20230724024159.png) 麒麟软件有限公司 ![](https://img-home.csdnimg.cn/images/20230724024159.png) ![](https://img-home.csdnimg.cn/images/20230724024159.png) 麒麟软件有限公司 连接模式里,数据库默认的最大连接数是2560。 oracle的内存为物理内存的40%-60%。 ![](https://img-home.csdnimg.cn/images/20230724024159.png) ![](https://img-home.csdnimg.cn/images/20230724024159.png) 麒麟软件有限公司 ![](https://img-home.csdnimg.cn/images/20230724024159.png) 先决条件检查 swap 空间与 DNS 问题可以忽略,下一步。 ![](https://img-home.csdnimg.cn/images/20230724024159.png) ![](https://img-home.csdnimg.cn/images/20230724024159.png) 麒麟软件有限公司 等待安装完成。 ![](https://img-home.csdnimg.cn/images/20230724024159.png) 麒麟软件有限公司 **5.** 验证及使用 **5.1.** 验证集群、数据库 5.1.1.验证集群是否正常 |--------------------| | crsctl stat res -t | ![](https://img-home.csdnimg.cn/images/20230724024159.png) 5.1.2.检查集群运行状态 |----------------------| | crsctl check cluster | ![](https://img-home.csdnimg.cn/images/20230724024159.png) 查看集群监听:srvctl status listener ![](https://img-home.csdnimg.cn/images/20230724024159.png) ![](https://img-home.csdnimg.cn/images/20230724024159.png) 麒麟软件有限公司 5.1.3.查看 PDB Oracle 用户下登录数据库,查看 pdb。 |--------------------------------------| | sqlplus / as sysdba SQL\> show pdbs; | 5.1.4.查看监听状态 Oracle 用户下查看监听状态。 |----------------| | lsnrctl status | ![](https://img-home.csdnimg.cn/images/20230724024159.png) ![](https://img-home.csdnimg.cn/images/20230724024159.png) 麒麟软件有限公司 5.1.5.查看节点的应用程序 |------------------------| | srvctl status nodeapps | |------------------------| | srvctl config nodeapps | ONS(Oracle Notification Service):用于集群通信。 ![](https://img-home.csdnimg.cn/images/20230724024159.png) ![](https://img-home.csdnimg.cn/images/20230724024159.png) 麒麟软件有限公司 5.1.6.查看 ASM 状态 |----------------------------------------| | srvctl status asm srvctl config asm -a | |----------|-----------| | **5.2.** | 数据库的关闭与启动 | 5.2.1.关闭数据库 |------------------------------------------------------------------| | \[oracle@rac1 \~\]$ sqlplus / as sysdba SQL\>shutdown immediate; | 5.2.2.开启数据库 |-------------------------------------------------------| | \[oracle@rac1 \~\]$ sqlplus / as sysdba SQL\>startup; | |----------|-------| | **5.3.** | 数据库使用 | 查看数据库当前连接: |----------------| | show con_name; | 查看 PDB 列表: ![](https://img-home.csdnimg.cn/images/20230724024159.png) |------------------------------------------------------------|----------| | ![](https://img-home.csdnimg.cn/images/20230724024159.png) | 麒麟软件有限公司 | |------------| | show pdbs; | ![](https://img-home.csdnimg.cn/images/20230724024159.png) 容器切换至 pdb: |----------------------------------| | alter session set container=pdb; | 节点 1 PDB 下创建表: |-------------------------------------------------------------------------------------------------------------| | create table ky_1 (no int,name varchar2(10)); insert into ky_1 values(1,'aaa'); commit; select \*from ky_1; | ![](https://img-home.csdnimg.cn/images/20230724024159.png) ![](https://img-home.csdnimg.cn/images/20230724024159.png) 麒麟软件有限公司 节点 2 进行验证: 改回去scp **6.** 相关报错及处理方法 **6.1.** 运行./gridSetup.sh 或者安装 Oracle 报错 requires X display 弹不 出窗口 \[grid@rac1 grid\]$ ./gridSetup.sh |--------|--------|----|--------|-----|-----------|---------|--------|------| | ERROR: | Unable | to | verify | the | graphical | display | setup. | This | application requires X display. Make sure that xdpyinfo exist under PATH variable. |-------------------------------------|-------|-------|---------|--------| | /u01/app/19.3.0/grid/perl/bin/perl: | error | while | loading | shared | libraries: libnsl.so.1: cannot open shared object file: No such file or directory ![](https://img-home.csdnimg.cn/images/20230724024159.png) 解决办法: root 用户下启动 vncserver: ![](https://img-home.csdnimg.cn/images/20230724024159.png) |------------------------------------------------------------|----------| | ![](https://img-home.csdnimg.cn/images/20230724024159.png) | 麒麟软件有限公司 | |-----------| | vncserver | 根据 vnc 的端口 5901: |------------------------------------| | export DISPLAY=localhost:1 xhost + | 如果 xhost +报错 unable to open display 再: |---------------------------| | export DISPLAY=:0 xhost + | 返回信息为 access control disabled,clients can connect from any host 才算可以。 然后回到 gird 用户或者 Oracle 用户下,export DISPLAY=:0,再运行安 装脚本,即可弹出窗口。 **6.2.** 报错 PRVG-0282 安装前检查报错 PRVG-0282 : failed to retrieve the operating system distribution ID 例 如 grid 安 装 目 录 下 , 编 辑 cv/admin/cvu_config , 添 加 一 行 CV_ASSUME_DISTID=KYV10。 Oracle 同。 ![](https://img-home.csdnimg.cn/images/20230724024159.png) 麒麟软件有限公司 ![](https://img-home.csdnimg.cn/images/20230724024159.png) **6.3.** 报错 INS-06003 INS-06006 若 ssh 互信手动验证没问题,考虑是 ssh 版本与 19c 不兼容的可能性,ssh-V 查看当前版本,OpenSSH 8.0 增加了客户端检查导致拒绝文件传输, 将 OpenSSH 回退至 7,或者禁用这些客户端检查,以下为禁用客户端检查的方法。 参考 https://blog.csdn.net/oradbm/article/details/106024895 两个节点通过 root 用户,将原来的 scp 命令改名: |-----------------------------------| | mv /usr/bin/scp /usr/bin/scp.orig | 创建一个新的文件 /usr/bin/scp : |------------------| | vim /usr/bin/scp | 在 /usr/bin/scp 中添加: |--------------------------| | /usr/bin/scp.orig -T $\* | 修改文件的权限: |------------------------| | chmod 555 /usr/bin/scp | 安装窗口点击测试,测试通过,继续安装。在安装结束后改回原来的 scp。 |-----------------------------------| | mv /usr/bin/scp.orig /usr/bin/scp | ![](https://img-home.csdnimg.cn/images/20230724024159.png) ![](https://img-home.csdnimg.cn/images/20230724024159.png) 麒麟软件有限公司 **6.4.** 报错 CRS-1705 若出现报错 CRS-1705: 找到 0 个已配置的表决文件, 但需要 1 个表决 文件, 正在终止以确保数据完整性; 详细信息见 (:CSSNM00065:) (位于 /u01/app/grid/diag/crs/rac2/crs/trace/ocssd.trc) CRS-2883: 在集群件堆栈启动期间, 资源 'ora.cssd' 失败。 CRS-4406: Oracle 高可用性服务同步启动失败。 CRS-41053: 正在检查 Oracle Grid Infrastructure 是否存在文件权限 问题 CRS-4000: 命令 Start 失败, 或已完成但出现错误。 |------------|----------|-------------|--------|----|-------|--------| | 2022/03/11 | 17:30:49 | CLSRSC-117: | Failed | to | start | Oracle | Clusterware stack Died at /u01/app/19.3.0/grid/crs/install/crsinstall.pm line 1970. 检查共享磁盘配置是否正确。

相关推荐
郝学胜-神的一滴3 小时前
使用Linux的read和write系统函数操作文件
linux·服务器·开发语言·数据库·c++·程序人生·软件工程
哲Zheᗜe༘3 小时前
了解学习MySQL数据库基础
数据库·学习·mysql
Miqiuha3 小时前
sql的表join怎么学?
数据库·sql
TiAmo zhang4 小时前
调查问卷管理系统开发 │ 系统功能概述
数据库·sqlserver
problc4 小时前
PostgreSQL pg_trgm中文模糊匹配优化技巧
数据库·postgresql
我真的是大笨蛋4 小时前
Redis的String详解
java·数据库·spring boot·redis·spring·缓存
lwprain4 小时前
图数据库neo4j desktop2.0初探
数据库·neo4j
先鱼鲨生4 小时前
【MySQL】认识数据库以及MySQL安装
数据库·mysql
周杰伦_Jay5 小时前
【终端使用MySQL】MySQL 数据库核心操作全解析:从入门到性能优化
数据库·mysql·性能优化