【oracle19c静默安装RAC】

19 篇文章 1 订阅

安装规划

软件规划

软件版本
虚拟机软件VMware-workstation-full-16.1.1-17801498.exe
操作系统软件CentOS-7-x86_64-DVD-1810.iso
Oracle数据库软件LINUX.X64_193000_db_home.zip
GI软件LINUX.X64_193000_grid_home.zip
openfiler软件openfileresa-2.99.1-x86_64-disc1.iso
rlwraprlwrap-0.37-1.el6.x86_64.rpm

虚拟机规划

主机信息

主机名操作系统cpu核数内存硬盘网卡
ora19c-rac1Centos7.64核8G100G2个网卡,1块public,1块private
ora19c-rac2Centos7.64核8G100G2个网卡,1块public,1块private
storageopenfiler自带的4核8G450G与ora19c-rac1的public同一网段

网络规划

节点名称public-ipprivate-ipvipscan-ip
ora19c-rac1192.168.245.14110.10.10.141192.168.245.101192.168.245.140
ora19c-rac2192.168.245.14210.10.10.142192.168.245.102
storage192.168.245.150

硬盘规划

目录大小
/tmp10G
swap8G
/boot1G
/10G
/u0170G

ASM磁盘组

ASM磁盘组虚拟磁盘大小
ocrdgocr_disk1, ocr_disk2,ocr_disk33*10G
datadgdata_disk200G
archdgbackup_disk200G

Oracle规划

用户组和用户

用户组说明
oinstallOracle清单和软件所有者
dba数据库管理员、RAC管理员
operDBA操作员组
backupdba备份管理员
dgdbaDG管理员
kmdbaKM管理员
asmdbaASM数据库管理员组
asmoperASM操作员组
asmadminOracle自动存储管理组
用户用户所属主组用户所属其他组用户家目录
oracleoinstalldba,asmdba,backupdba,dgdba,kmdba,oper/home/oracle
gridoinstalldba,asmadmin,asmdba,asmoper/home/grid

软件目录规划

目录路径说明
ORACLE_BASE(oracle)/u01/app/oracleoracle基目录
ORACLE_HOME (oracle)/u01/app/oracle/product/19c/db_1oracle用户HOME目录
ORACLE_BASE (grid)/u01/app/gridgrid基目录
ORACLE_HOME (grid)/u01/app/19c/gridgrid用户HOME目录

整体数据库安装规划

规划内容规划描述
内存规划SGA(4GB) PGA(500MB)
字符集AL32UTF8
归档模式非(安装好后手动开启归档)
redo5组 每组200M
undo2G 自动扩展 最大4G
temp4G
闪回配置4G大小

虚拟机准备

操作系统安装

VMware安装操作系统Centos7.6

yum源配置

基于Centos7.6配置yum源服务器和客户端

openfiler安装

Vmware安装openfiler

安装前准备

配置host文件(rac1和rac2)

vi /etc/hosts
#RAC-PUBLIC-IP
192.168.245.141 ora19c-rac1
192.168.245.142 ora19c-rac2

#RAC-PRIVATE-IP
10.10.10.141 ora19c-rac1-priv
10.10.10.142 ora19c-rac2-priv

#RAC-VIP
192.168.245.101 ora19c-rac1-vip
192.168.245.102 ora19c-rac2-vip

#RAC-SCAN-IP
192.168.245.140 ora19c-rac-scan

关闭防火墙(rac1和rac2)

# 检查防火墙状态
systemctl status firewalld.service 
# 关闭防火墙
systemctl stop firewalld.service 
# 关闭防火墙开机自启
systemctl disable firewalld.service 

关闭Selinux(rac1和rac2)

sed -i 's#SELINUX=.*#SELINUX=disabled#' /etc/selinux/config

安装依赖包(rac1和rac2)

yum install -y bc \
compat-libcap1* \
compat-libcap* \
binutils \
compat-libstdc++-33 \
elfutils-libelf \
elfutils-libelf-devel \
gcc \
gcc-c++ \
glibc-2.5 \
glibc-common \
glibc-devel \
glibc-headers \
ksh \
libaio \
libaio-devel \
libgcc \
libstdc++ \
libstdc++-devel \
make \
sysstat \
unixODBC \
unixODBC-devel \
binutils* \
compat-libstdc* \
elfutils-libelf* \
gcc* \
glibc* \
ksh* \
libaio* \
libgcc* \
libstdc* \
make* \
sysstat* \
libXp* \
glibc-kernheaders \
net-tools-* \
iscsi-initiator-utils \
udev \
xclock*

修改内核参数(rac1和rac2)

echo '
kernel.shmmax = 277495689510912
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
net.core.rmem_default = 262144
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 1048586
fs.file-max = 6815744
kernel.shmall = 67747971072
net.ipv4.tcp_max_tw_buckets = 6000
net.ipv4.ip_local_port_range = 9000 65500
net.ipv4.tcp_tw_recycle = 0
net.ipv4.tcp_tw_reuse = 1
#net.core.somaxconn = 262144
net.core.netdev_max_backlog = 262144
net.ipv4.tcp_max_orphans = 262144
net.ipv4.tcp_max_syn_backlog = 262144
net.ipv4.tcp_synack_retries = 2
net.ipv4.tcp_syn_retries = 1
net.ipv4.tcp_fin_timeout = 1
net.ipv4.tcp_keepalive_time = 30
net.ipv4.tcp_keepalive_probes = 6
net.ipv4.tcp_keepalive_intvl = 5
net.ipv4.tcp_timestamps = 0
fs.aio-max-nr = 1048576
net.ipv4.conf.all.rp_filter = 2
net.ipv4.conf.default.rp_filter = 2' >> /etc/sysctl.conf

# 生成系统参数
sysctl -p 

配置资源限制参数(rac1和rac2)

echo '
oracle   soft   nofile    1024
oracle   hard   nofile    65536
oracle   soft   nproc    16384
oracle   hard   nproc    16384
oracle   soft   stack    10240
oracle   hard   stack    32768
oracle   hard   memlock    134217728
oracle   soft   memlock    134217728

grid   soft   nofile    1024
grid   hard   nofile    65536
grid   soft   nproc    16384
grid   hard   nproc    16384
grid   soft   stack    10240
grid   hard   stack    32768
grid   hard   memlock    134217728
grid   soft   memlock    134217728' >> /etc/security/limits.conf
echo '
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
' >> /etc/profile

# 使环境变量立即生效
source /etc/profile

修改登录验证(rac1和rac2)

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

创建用户组和用户(rac1和rac2)

groupadd -g 601 oinstall
groupadd -g 602 dba
groupadd -g 603 oper
groupadd -g 604 backupdba
groupadd -g 605 dgdba
groupadd -g 606 kmdba
groupadd -g 607 asmdba
groupadd -g 608 asmoper
groupadd -g 609 asmadmin
useradd -u 601 -g oinstall -G asmadmin,asmdba,dba,asmoper grid
useradd -u 602 -g oinstall -G dba,backupdba,dgdba,kmdba,asmadmin,oper,asmdba oracle
# 修改grid和oracle的密码
passwd grid
passwd oracle

创建目录(rac1和rac2)

# 以root用户,创建Oracle Inventory 目录
mkdir -p /u01/app/oraInventory
chown -R grid:oinstall /u01/app/oraInventory
chmod -R 775 /u01/app/oraInventory

# 以root用户,创建GI HOME目录
mkdir -p /u01/app/grid
mkdir -p /u01/app/19c/grid
chown -R grid:oinstall /u01/app/grid
chmod -R 775 /u01/app/grid
chown -R grid:oinstall /u01/app/19c
chmod -R 775 /u01/app/19c/

# 以root用户,创建Oracle Base目录
mkdir -p /u01/app/oracle
mkdir /u01/app/oracle/cfgtoollogs 
chown -R oracle:oinstall /u01/app/oracle
chmod -R 775 /u01/app/oracle

# 以root用户,创建Oracle RDBMS Home目录
mkdir -p /u01/app/oracle/product/19c/db_1
chown -R oracle:oinstall /u01/app/oracle/product/19c/db_1
chmod -R 775 /u01/app/oracle/product/19c/db_1

添加用户环境变量(rac1和rac2)

  • grid ora19c-rac1
su - grid
vi ~/.bash_profile
PS1="[`whoami`@`hostname`:"'$PWD]$'
export PS1
umask 022
export TMP=/tmp
export TMPDIR=$TMP
export ORACLE_SID=+ASM1
export ORACLE_TERM=xterm;
export ORACLE_BASE=/u01/app/grid
export ORACLE_HOME=/u01/app/19c/grid
export NLS_LANG="AMERICAN_AMERICA.AL32UTF8"
export NLS_DATE_FORMAT="yyyy-mm-dd HH24:MI:SS"
export TNS_ADMIN=$ORACLE_HOME/network/admin
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib  
export PATH=.:$PATH:$HOME/bin:$ORACLE_HOME/bin
export THREADS_FLAG=native
alias sqlplus='rlwrap sqlplus'
alias asmcmd='rlwrap asmcmd'
alias rman='rlwrap rman'

source ~/.bash_profile
  • grid ora19c-rac2
su - grid
vi ~/.bash_profile
PS1="[`whoami`@`hostname`:"'$PWD]$'
export PS1
umask 022
export TMP=/tmp
export TMPDIR=$TMP
export ORACLE_SID=+ASM2
export ORACLE_TERM=xterm;
export ORACLE_BASE=/u01/app/grid
export ORACLE_HOME=/u01/app/19c/grid
export NLS_LANG="AMERICAN_AMERICA.AL32UTF8"
export NLS_DATE_FORMAT="yyyy-mm-dd HH24:MI:SS"
export TNS_ADMIN=$ORACLE_HOME/network/admin
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib  
export PATH=.:$PATH:$HOME/bin:$ORACLE_HOME/bin
export THREADS_FLAG=native
alias sqlplus='rlwrap sqlplus'
alias asmcmd='rlwrap asmcmd'
alias rman='rlwrap rman'

source ~/.bash_profile
  • oracle ora19c-rac1
su - oracle
vi ~/.bash_profile
PS1="[`whoami`@`hostname`:"'$PWD]$'
export PS1
export TMP=/tmp
export TMPDIR=$TMP
export ORACLE_HOSTNAME=ora19c-rac1
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=/u01/app/oracle/product/19c/db_1
export ORACLE_SID=orcl1
export NLS_LANG="AMERICAN_AMERICA.AL32UTF8"
export NLS_DATE_FORMAT="yyyy-mm-dd HH24:MI:SS"
export TNS_ADMIN=$ORACLE_HOME/network/admin
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib  
export PATH=.:$PATH:$HOME/bin:$ORACLE_BASE/product/19c/db_1/bin:$ORACLE_HOME/bin
export THREADS_FLAG=native
alias sqlplus='rlwrap sqlplus'
alias rman='rlwrap rman'

source ~/.bash_profile
    • oracle ora19c-rac2
su - oracle
vi ~/.bash_profile
PS1="[`whoami`@`hostname`:"'$PWD]$'
export PS1
export TMP=/tmp
export TMPDIR=$TMP
export ORACLE_HOSTNAME=ora19c-rac2
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=/u01/app/oracle/product/19c/db_1
export ORACLE_SID=orcl2
export NLS_LANG="AMERICAN_AMERICA.AL32UTF8"
export NLS_DATE_FORMAT="yyyy-mm-dd HH24:MI:SS"
export TNS_ADMIN=$ORACLE_HOME/network/admin
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib  
export PATH=.:$PATH:$HOME/bin:$ORACLE_BASE/product/19c/db_1/bin:$ORACLE_HOME/bin
export THREADS_FLAG=native
alias sqlplus='rlwrap sqlplus'
alias rman='rlwrap rman'

source ~/.bash_profile

配置ISCSI挂载外部存储(rac1和rac2)

# yum安装iscsi
yum install -y iscsi*

# 开机启动iscsi服务
systemctl enable iscsid

# 发现磁盘
iscsiadm -m discovery -t sendtargets -p 192.168.245.150

# 手动登录目标(这里一定要注意 -T后面那个参数一定要按照你上面发现磁盘的那个结果进行更改)
iscsiadm -m node -T iqn.oracle19c.rac -p 192.168.245.150 -l

# 设置开机自启动连接
iscsiadm -m node -T iqn.oracle19c.rac -p 192.168.245.150 --op update -n node.startup -v automatic

# 查看磁盘
ls -l /dev/disk/by-path/*iscsi* | awk '{FS=" "; print $9 " " $10 " " $11}'

# 检查磁盘 wwid
for i in $(ls /dev/sd*|grep -v [0-9]|grep -v sda)
do  
echo -ne "$(fdisk -l ${i}|grep "^Disk\|磁盘" |grep ${i}|awk '{print $1,$2,$3,$4}') WWID:"  
/lib/udev/scsi_id -g -u -d "${i}"
done|sort -nk3 -k5|column -t

# 配置udev
vi /etc/udev/rules.d/99-oracle-asmdevices.rules
KERNEL=="sd*", ENV{ID_SERIAL}=="14f504e46494c455250474f6933472d534a41442d527a304a", SYMLINK+="asm_ocr_1",  OWNER="grid",  GROUP="asmadmin", MODE="0660"
KERNEL=="sd*", ENV{ID_SERIAL}=="14f504e46494c45526b58366859492d383371482d58344c48", SYMLINK+="asm_ocr_2",  OWNER="grid",  GROUP="asmadmin", MODE="0660"
KERNEL=="sd*", ENV{ID_SERIAL}=="14f504e46494c45526d4c587168642d33796f382d4a755077", SYMLINK+="asm_ocr_3",  OWNER="grid",  GROUP="asmadmin", MODE="0660"
KERNEL=="sd*", ENV{ID_SERIAL}=="14f504e46494c455267356d6e674c2d38314f732d37744d53", SYMLINK+="asm_data",  OWNER="grid",  GROUP="asmadmin", MODE="0660"
KERNEL=="sd*", ENV{ID_SERIAL}=="14f504e46494c45527a47544a38752d563567462d61577641", SYMLINK+="asm_bak",  OWNER="grid",  GROUP="asmadmin", MODE="0660"

# 使udev生效
udevadm control --reload-rules
udevadm trigger

节点免密互信(rac1)

# 切到 /usr/local/bin 目录
cd /usr/local/bin

# 上传互信脚本 sshUserSetup.sh
rz

# 创建软连接
ln -s ./sshUserSetup.sh sshUserSetup

# 增加执行权限
chmod +x ./sshUserSetup

# grid 用户 互信
sshUserSetup -user grid -hosts "ora19c-rac1 ora19c-rac2" -advanced -noPromptPassphrase

# oracle 用户 互信
sshUserSetup -user oracle -hosts "ora19c-rac1 ora19c-rac2" -advanced -noPromptPassphrase

# 测试互信是否成功
# 在 2台机器上都 测试
su - grid -c "ssh ora19c-rac1 date"
su - grid -c "ssh ora19c-rac2 date"
su - oracle -c "ssh ora19c-rac1 date"
su - oracle -c "ssh ora19c-rac2 date"

关闭透明大页(rac1和rac2)

# 备份grub文件
cp /etc/default/grub /etc/default/grub.bak

# 增加transparent_hugepage=never到GRUB_CMDLINE_LINUX的尾部
vi /etc/default/grub
# ora19c-rac1
GRUB_CMDLINE_LINUX="rd.lvm.lv=centos_ora19c-rac1/root rd.lvm.lv=centos_ora19c-rac1/swap rhgb quiet transparent_hugepage=never"
# ora19c-rac2
GRUB_CMDLINE_LINUX="rd.lvm.lv=centos_ora19c-rac2/root rd.lvm.lv=centos_ora19c-rac2/swap rhgb quiet transparent_hugepage=never"

# 执行命令
grub2-mkconfig -o /boot/grub2/grub.cfg

# 重启不生效
echo never > /sys/kernel/mm/transparent_hugepage/enabled

# 这里需要重启
shutdown -r now

# 查看是否禁用透明大页 结果 always madvise [never]
cat /sys/kernel/mm/transparent_hugepage/enabled

# 查看是否禁用透明大页 结果 AnonHugePages:         0 kB
grep AnonHugePages /proc/meminfo

额外的安装包(rac1和rac2)

# 切到root目录
cd /root

# 上传 
# cvuqdisk-1.0.10-1.rpm
# rlwrap-0.37-1.el6.x86_64.rpm
# compat-libstdc++-33-3.2.3-72.el7.x86_64.rpm
# kmod-20-21.el7.x86_64.rpm
# kmod-libs-20-21.el7.x86_64.rpm
rz 

# 安装 如果装了就不用再装了
rpm -ivh cvuqdisk-1.0.10-1.rpm
# 如果缺少以下包的话安装
yum -y install perl-Data-Dumper-2.145-3.el7.x86_64
rpm -ivh rlwrap-0.37-1.el6.x86_64.rpm
yum install -y compat-libstdc++-33-3.2.3-72.el7.x86_64.rpm kmod-20-21.el7.x86_64.rpm kmod-libs-20-21.el7.x86_64.rpm

关闭 ZEROCONF(rac1和rac2)

echo "NOZEROCONF=yes" >> /etc/sysconfig/network

移除操作系统时间同步配置(rac1和rac2)

mv /etc/chrony.conf /etc/chrony.conf.bak

安装

安装grid(rac1)

su - grid

cd $ORACLE_HOME

# 上传 LINUX.X64_193000_grid_home.zip
rz 

# 解压
unzip LINUX.X64_193000_grid_home.zip

# 安装前检查
./runcluvfy.sh stage -pre crsinst -n ora19c-rac1,ora19c-rac2 -fixup -verbose

# 备份响应文件
cp ${ORACLE_HOME}/install/response/gridsetup.rsp ${ORACLE_HOME}/install/response/gridsetup.rsp.bak

# 编辑响应文件
vi ${ORACLE_HOME}/install/response/gridsetup.rsp
INVENTORY_LOCATION=/u01/app/oraInventory  # 60行
oracle.install.option=CRS_CONFIG # 75行
ORACLE_BASE=/u01/app/grid # 80行
oracle.install.asm.OSDBA=asmdba # 98行
oracle.install.asm.OSOPER=asmoper # 105行
oracle.install.asm.OSASM=asmadmin # 111行
oracle.install.crs.config.scanType=LOCAL_SCAN # 122行
oracle.install.crs.config.gpnp.scanName=ora19c-rac-scan # 135行
oracle.install.crs.config.gpnp.scanPort=1521 # 141行
oracle.install.crs.config.ClusterConfiguration=STANDALONE # 152行
oracle.install.crs.config.configureAsExtendedCluster=false # 160行
oracle.install.crs.config.clusterName=ora19c-cluster # 178行
oracle.install.crs.config.gpnp.configureGNS=false # 185行
oracle.install.crs.config.autoConfigureClusterNodeVIP=false # 192行
oracle.install.crs.config.clusterNodes=ora19c-rac1:ora19c-rac1-vip,ora19c-rac2:ora19c-rac2-vip # 251行
oracle.install.crs.config.networkInterfaceList=ens33:192.168.245.0:1,ens34:10.10.10.0:5 # 267行
oracle.install.asm.configureGIMRDataDG=false # 284行
oracle.install.crs.config.storageOption=FLEX_ASM_STORAGE # 301行
oracle.install.crs.config.useIPMI=false # 327行
oracle.install.asm.SYSASMPassword=Oracle19Aa123456 # 346行
oracle.install.asm.diskGroup.name=crsdg # 354行
oracle.install.asm.diskGroup.redundancy=NORMAL # 366行
oracle.install.asm.diskGroup.AUSize=4 # 380行
oracle.install.asm.diskGroup.disks=/dev/asm_ocr_1,/dev/asm_ocr_2,/dev/asm_ocr_3 # 413行
oracle.install.asm.diskGroup.diskDiscoveryString=/dev/asm_* # 432行
oracle.install.asm.monitorPassword=Oracle19cAa123456 # 438行
oracle.install.crs.configureRHPS=false # 527行
oracle.install.crs.config.ignoreDownNodes=false # 538行
oracle.install.config.managementOption=NONE # 551行
oracle.install.crs.rootconfig.executeRootScript=false # 590行

# 开始静默安装grid
$ORACLE_HOME/gridSetup.sh -silent -noconfig  -ignorePrereqFailure  -waitforcompletion -responseFile ${ORACLE_HOME}/install/response/gridsetup.rsp

# 分别在ora19c-rac1和ora19c-rac2以root用户执行 这里节点有先后顺序,先1后2
/u01/app/oraInventory/orainstRoot.sh
/u01/app/19c/grid/root.sh

# 继续完成安装配置 仅在 ora19c-rac1 以 grid 用户执行
/u01/app/19c/grid/gridSetup.sh -executeConfigTools -responseFile /u01/app/19c/grid/install/response/gridsetup.rsp -silent

# 检查
crsctl stat res -t
--------------------------------------------------------------------------------
Name           Target  State        Server                   State details       
--------------------------------------------------------------------------------
Local Resources
--------------------------------------------------------------------------------
ora.LISTENER.lsnr
               ONLINE  ONLINE       ora19c-rac1              STABLE
               ONLINE  ONLINE       ora19c-rac2              STABLE
ora.chad
               ONLINE  ONLINE       ora19c-rac1              STABLE
               ONLINE  ONLINE       ora19c-rac2              STABLE
ora.net1.network
               ONLINE  ONLINE       ora19c-rac1              STABLE
               ONLINE  ONLINE       ora19c-rac2              STABLE
ora.ons
               ONLINE  ONLINE       ora19c-rac1              STABLE
               ONLINE  ONLINE       ora19c-rac2              STABLE
--------------------------------------------------------------------------------
Cluster Resources
--------------------------------------------------------------------------------
ora.ASMNET1LSNR_ASM.lsnr(ora.asmgroup)
      1        ONLINE  ONLINE       ora19c-rac1              STABLE
      2        ONLINE  ONLINE       ora19c-rac2              STABLE
      3        OFFLINE OFFLINE                               STABLE
ora.CRSDG.dg(ora.asmgroup)
      1        ONLINE  ONLINE       ora19c-rac1              STABLE
      2        ONLINE  ONLINE       ora19c-rac2              STABLE
      3        OFFLINE OFFLINE                               STABLE
ora.LISTENER_SCAN1.lsnr
      1        ONLINE  ONLINE       ora19c-rac1              STABLE
ora.asm(ora.asmgroup)
      1        ONLINE  ONLINE       ora19c-rac1              Started,STABLE
      2        ONLINE  ONLINE       ora19c-rac2              Started,STABLE
      3        OFFLINE OFFLINE                               STABLE
ora.asmnet1.asmnetwork(ora.asmgroup)
      1        ONLINE  ONLINE       ora19c-rac1              STABLE
      2        ONLINE  ONLINE       ora19c-rac2              STABLE
      3        OFFLINE OFFLINE                               STABLE
ora.cvu
      1        ONLINE  ONLINE       ora19c-rac1              STABLE
ora.ora19c-rac1.vip
      1        ONLINE  ONLINE       ora19c-rac1              STABLE
ora.ora19c-rac2.vip
      1        ONLINE  ONLINE       ora19c-rac2              STABLE
ora.qosmserver
      1        ONLINE  ONLINE       ora19c-rac1              STABLE
ora.scan1.vip
      1        ONLINE  ONLINE       ora19c-rac1              STABLE
--------------------------------------------------------------------------------

注:

  • oracle.install.crs.config.clusterName=ora19c-cluster 这个配置的clusterName的值长度要小于等于15,否则后面执行/u01/app/19c/grid/root.sh脚本时会报错CLSRSC-119: Start of the exclusive mode cluster failed
  • 安装前检查若有失败项,例如:/tmp/shm、DNS、NTP都是可以忽略的。

安装db(rac1)

su - oracle

# 进入 $ORACLE_HOME
cd $ORACLE_HOME

# 上传 LINUX.X64_193000_db_home.zip
rz

# 解压
unzip LINUX.X64_193000_db_home.zip

# 备份响应文件
cp ${ORACLE_HOME}/install/response/db_install.rsp ${ORACLE_HOME}/install/response/db_install.rsp.bak

# 编辑响应文件
vi ${ORACLE_HOME}/install/response/db_install.rsp
oracle.install.option=INSTALL_DB_SWONLY # 29行
UNIX_GROUP_NAME=oinstall # 34行
INVENTORY_LOCATION=/u01/app/oraInventory # 41行
ORACLE_HOME=/u01/app/oracle/product/19c/db_1 # 45行
ORACLE_BASE=/u01/app/oracle # 50行
oracle.install.db.InstallEdition=EE # 62行
oracle.install.db.OSDBA_GROUP=dba # 79行
oracle.install.db.OSOPER_GROUP=oper # 85行
oracle.install.db.OSBACKUPDBA_GROUP=backupdba # 90行
oracle.install.db.OSDGDBA_GROUP=dgdba # 95行
oracle.install.db.OSKMDBA_GROUP=kmdba # 100行
oracle.install.db.OSRACDBA_GROUP=dba # 105行
oracle.install.db.rootconfig.executeRootScript=false # 120行
oracle.install.db.CLUSTER_NODES=ora19c-rac1,ora19c-rac2 # 157行

# 开始静默安装db
$ORACLE_HOME/runInstaller -silent -ignorePrereqFailure  -waitForCompletion -responseFile ${ORACLE_HOME}/install/response/db_install.rsp

# 在ora19c-rac1和ora19c-rac1分别以root用户执行
/u01/app/oracle/product/19c/db_1/root.sh

创建ASM磁盘组

su - grid

# 创建datadg
asmca -silent -createDiskGroup \
 -sysAsmPassword Oracle19cAa123456 \
 -asmsnmpPassword Oracle19cAa123456 \
 -diskString '/dev/asm_*' \
 -diskGroupName datadg \
 -diskList /dev/asm_data \
 -redundancy EXTERNAL \
 -au_size 4 \
 -compatible.asm 19.0.0.0.0

创建archdg
asmca -silent -createDiskGroup \
 -sysAsmPassword Oracle19cAa123456 \
 -asmsnmpPassword Oracle19cAa123456 \
 -diskString '/dev/asm_*' \
 -diskGroupName archdg \
 -diskList /dev/asm_bak \
 -redundancy EXTERNAL \
 -au_size 4 \
 -compatible.asm 19.0.0.0.0

dbca建库(rac1)

su - oracle

# 备份响应文件
cp $ORACLE_HOME/assistants/dbca/dbca.rsp $ORACLE_HOME/assistants/dbca/dbca.rsp.bak

# 编辑响应文件
vi $ORACLE_HOME/assistants/dbca/dbca.rsp
gdbName=orcl # 32行
sid=orcl # 42行
databaseConfigType=RAC # 52行
policyManaged=FALSE # 74行
nodelist=ora19c-rac1,ora19c-rac2 # 213行
templateName=General_Purpose.dbc # 223行
sysPassword=Oracle19cAa123456 # 233行
systemPassword=Oracle19cAa123456 # 243行
recoveryAreaDestination=NONE # 421行
storageType=ASM # 431行
diskGroupName=+datadg # 440行
asmsnmpPassword=Oracle19cAa123456 # 449行
characterSet=AL32UTF8 # 468行
databaseType=MULTIPURPOSE # 584行
automaticMemoryManagement=FALSE # 594行
totalMemory=4096 # 604行

# dbca静默装数据库实例
nohup dbca -silent -createDatabase -ignorePreReqs -responseFile $ORACLE_HOME/assistants/dbca/dbca.rsp > /u01/app/oraInventory/logs/dbca.log 2>&1 & 

# 实时查看安装进度
tail -f /u01/app/oraInventory/logs/dbca.log
  • 到此基本就安装完成了

参考文章

Rhel7.3 搭建 Oracle12.2.01 RAC

【安装篇】- 基于 VMWARE Oracle Linux7.9 安装 Oracle19c RAC 详细配置方案

使用 VMware 16 RHEL7.7 虚拟机静默安装 Oracle 19c RAC

  • 6
    点赞
  • 30
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 5
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

sqlboy-yuzhenc

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值